我正在尝试运行一些授权,但是在中间件上遇到了麻烦。我确实编写了Gate,并且它可以与@can blade指令完美配合。我想封锁路线,但得到:
“尝试获取非对象的属性”错误,并显示我的登机门。
大门是:
Gate::define('canCForm', function($user, $form){
return ($user->cargo == $form->validador1);
});
这是用AuthServiceProvider编写的。
然后路线是:
Route::get('/formulariosrecebidos/{form}', 'FormsController@editRecebido')->middleware('can:canCForm,form');
有什么主意吗?我确实尝试过很多方法来更改它,但要使其正常工作,唯一的方法是如果我做出类似“ return ($user->cargo == 'somestring');
”的内容,那么问题一定出在$ form中。尽管很奇怪,因为使用@can可以正常工作。