Вызов функции-члена role () на null в laravel при перенаправлении на страницу создания - PullRequest
0 голосов
/ 28 мая 2020

Помогите, пожалуйста, с этой Call to a member function roles() on null ошибкой в ​​laravel. На каждой странице он работает, но когда я вызываю метод создания, он выдает эту ошибку. я даю код ниже.

web.php

Auth::routes();

Route::get('/home', 'HomeController@index')->name('home');

Route::namespace('Admin')->middleware('can:access-all')->group(function (){
    Route::resource('/library','LibraryController', ['except' => ['show']]);
});

дюйм User.php

public function hasAnyRoles($roles)
{
    if ($this->roles()->whereIn('name', $roles)->first()) {
        return true;
    }

    return false;
}

public function hasRole($role)
{
    if ($this->roles()->where('name', $role)->first()) {
        return true;
    }

    return false;
}

дюйм role.php

public function users()
{
    return $this->belongsToMany('App\User');
}

дюйм LibraryController

public function __construct()
{
    $this->middleware('auth');
}
public function create()
{
    return redirect('books.create');
}

в layouts\app.blade.php

<span>{{ implode(', ',Auth::user()->roles()->get()->pluck('name')->toArray()) }}</span>

с каждой страницы, которую я сделал в своем проекте, везде он работает правильно, но здесь он не работает. Любое решение для обработки этой ошибки на каждой странице до того, как я сделал, и после того, как я работал?

1 Ответ

0 голосов
/ 28 мая 2020

Решил свою проблему. Я был сам виноват. Теперь меняю в return редирект на view() он работает правильно ..

public function create()
{
    return view('books.create');
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...