我为用户提供了标准资源路径:
Route::resource('users', 'UserController');
然而,我想为已提交的表单添加额外的路由,以绑定现有用户的角色/权限。
UserController
public function updateRolesPermissions(Request $request){
dd($request->all());
}
show.blade.php
我试过这两个:
{!! Form::model($user, ['route' => ['users.updateRolesPermissions', $user->id], 'method' => 'patch']) !!}
和此:
{!! Form::open(['action' => 'UserController@updateRolesPermissions']) !!}
在不打开新的单独路线的情况下,将其他路线添加到资源路线的最佳方法是什么?
答案 0 :(得分:1)
最佳方式是添加另一条路线。
Route::patch('users/{user_id}/roles_permissions', 'UserController@ updateRolesPermissions');
Route::resource('users', 'UserController');
这是它应该做的方式,所以对于新鲜或新的项目来说,这是最清楚的。试图过于聪明,将会很难在以后找到并维护。
使用路径模型绑定时,其行为应与其他路径相同。