为什么个人资料链接重定向到主页



我正在尝试查看我网站的配置文件页面,并不断将我重定向到主页,而不是供应商配置文件

未显示任何可见错误。有人能帮忙吗

这是我试图查看的链接https://booksafariafrica.com/en/profile/32

这是代码

<div class="owner-info widget-box">
<div class="media">
<div class="media-left">
<a href="{{route('user.profile',['id'=>$vendor->id])}}" target="_blank" >
@if($avatar_url = $vendor->getAvatarUrl())
<img class="avatar avatar-96 photo origin round" src="{{$avatar_url}}" alt="{{$vendor->getDisplayName()}}">
@else
<span class="avatar-text">{{ucfirst($vendor->getDisplayName()[0])}}</span>
@endif
</a>
</div>

我的控制器

<?php
/**
* Created by PhpStorm.
* User: h2 gaming
* Date: 8/17/2019
* Time: 3:05 PM
*/
namespace ModulesUserControllers;
use AppUser;
use IlluminateHttpRequest;
use ModulesFrontendController;
class ProfileController extends FrontendController
{
public function profile(Request $request,$id){
$user = User::find($id);
if(empty($user)){
abort(404);
}
if(!$user->hasPermissionTo('dashboard_vendor_access'))
{
return redirect('/');
}
$data['user'] = $user;
$data['page_title'] = $user->getDisplayName();
$this->registerCss('module/user/css/profile.css');
return view('User::frontend.profile.profile',$data);
}

我的路线

Route::group(['prefix'=>'profile'],function(){
Route::match(['get'],'/{id}','ProfileController@profile')->name("user.profile");

if(!$user->hasPermissionTo('dashboard_vendor_access'))
{
return redirect('/');
}

你的问题可能是由这个代码块引起的,因为如果满足条件,它会重定向到主页。

因此,请确保$user具有分配给它的适当权限。

问题是

if(!$user->hasPermissionTo('dashboard_vendor_access'))
{
return redirect('/');
}

然后必须去掉感叹号,效果很好。

最新更新