1 回答

TA貢獻(xiàn)2051條經(jīng)驗(yàn) 獲得超10個(gè)贊
當(dāng)我的會(huì)話到期并重新加載頁(yè)面時(shí),我收到以下錯(cuò)誤(在以下代碼塊中發(fā)出信號(hào)的行):
hasRole()錯(cuò)誤:調(diào)用成員函數(shù)null
class AdminMiddleware
{
public function handle($request, Closure $next) {
if ($request->user()->hasRole('admin')) // this line
return $next( $request );
else
abort( 401, 'Esta acción no está autorizada.' );
}
}
hasRole()是我User模型中的一個(gè)函數(shù),用于檢查用戶是否有權(quán)訪問(wèn)某些管理路由:
class User extends Authenticatable
{
/**
* Role-user relation (one-to-many)
*/
public function roles() {
return $this->belongsToMany( Role::class )->withTimestamps();
}
/**
* Authorize roles
*/
public function authorizeRoles($roles) {
if ($this->hasAnyRole($roles))
return true;
abort( 401, 'Esta acción no está autorizada.' );
}
/**
* Check if user has specified role
*/
public function hasRole($role) {
if ($this->roles()->where('name', $role)->first())
return true;
return false;
}
}
- 1 回答
- 0 關(guān)注
- 142 瀏覽
添加回答
舉報(bào)