在Laravel 6.0应用中,我需要使用带有两个参数的路由。
Route::get('view/{MyFirstModel}/{MySecondModel}', 'Mycontroller@view')
->middleware(['can:view,MyFirstModel,MySecondModel']);
我也尝试过:
Route::get('view/{MyFirstModel}/{MySecondModel}', 'Mycontroller@view')
->middleware(['can:view,MyFirstModel|MySecondModel']);
在我的政策中,我有:
public function view(User $user, MyFirstModel $first, MySecondModel $second) {
var_dump("I enter");
}
但是,它不起作用,并且永远不会调用该策略。如何在路由中间件中传递两个参数?
答案 0 :(得分:3)
我发现了我的错误。
似乎我应该使用这种罪过:
Route::get('view/{MyFirstModel}/{MySecondModel}', 'Mycontroller@view')->middleware('can:view,MyFirstModel,MySecondModel')
没有括号。