在同一页面上发布多个模态
Posting multiple modals on the same page
我有多个模式 windows 可以在我的 Laravel 应用程序中编辑用户个人资料。一种用于编辑描述的模态,一种用于编辑兴趣爱好等。
使用一种模式效果很好,因为我可以 post 它到个人资料页面,但问题是,我想 post 所有模式到同一页面,这就是为什么不起作用,我知道这一点.
我的意思是:
Route::put('/user/profile/edit','UserController@putDesc');
Route::put('/user/profile/edit','UserController@putRate');
模态是非常基本的形式,我在其中设置了指向 UserController 方法的操作。
在这种情况下我应该如何进行路由?我希望我说得很清楚。
如果所有模态都是配置文件的一部分,并且您希望每次用户在模态中编辑某些内容时都将数据保存到数据库,您应该将所有模态放入表单中并使用单一路由更新整个表单:
Route::put('/user/profile/update/{id}','UserController@update');
另一种方法是使用AJAX 查询每个模态的更新数据。如果所有模式中的数据都相似(如简单的文本输入),您可以使用一个路由来处理 AJAX 请求。如果数据不同,则使用多个路由:
Route::post('/user/profile/updateDesc','UserController@updateDesc');
Route::post('/user/profile/updateRate','UserController@updateRate');
Route::put('somelink', ['uses' => 'SomeController@someFunction', 'as' => 'one-route');
Route::put('someolink', ['uses' => 'SomeController@someOtherFunction', 'as' => 'two-route');
等等
如果您使用的是 LaravelCollective,您可以这样操作:
{!! Form::open(['method' => 'POST', 'route' => 'one-route']) !!}
{!! Form::close() !!}
{!! Form::open(['method' => 'POST', 'route' => 'two-route']) !!}
{!! Form::close() !!}
如果你没有使用 LaravelCollective 放入 action 属性
{{route('one-route')}} or {{route('two-route')}}
我有多个模式 windows 可以在我的 Laravel 应用程序中编辑用户个人资料。一种用于编辑描述的模态,一种用于编辑兴趣爱好等。 使用一种模式效果很好,因为我可以 post 它到个人资料页面,但问题是,我想 post 所有模式到同一页面,这就是为什么不起作用,我知道这一点.
我的意思是:
Route::put('/user/profile/edit','UserController@putDesc');
Route::put('/user/profile/edit','UserController@putRate');
模态是非常基本的形式,我在其中设置了指向 UserController 方法的操作。 在这种情况下我应该如何进行路由?我希望我说得很清楚。
如果所有模态都是配置文件的一部分,并且您希望每次用户在模态中编辑某些内容时都将数据保存到数据库,您应该将所有模态放入表单中并使用单一路由更新整个表单:
Route::put('/user/profile/update/{id}','UserController@update');
另一种方法是使用AJAX 查询每个模态的更新数据。如果所有模式中的数据都相似(如简单的文本输入),您可以使用一个路由来处理 AJAX 请求。如果数据不同,则使用多个路由:
Route::post('/user/profile/updateDesc','UserController@updateDesc');
Route::post('/user/profile/updateRate','UserController@updateRate');
Route::put('somelink', ['uses' => 'SomeController@someFunction', 'as' => 'one-route');
Route::put('someolink', ['uses' => 'SomeController@someOtherFunction', 'as' => 'two-route');
等等
如果您使用的是 LaravelCollective,您可以这样操作:
{!! Form::open(['method' => 'POST', 'route' => 'one-route']) !!}
{!! Form::close() !!}
{!! Form::open(['method' => 'POST', 'route' => 'two-route']) !!}
{!! Form::close() !!}
如果你没有使用 LaravelCollective 放入 action 属性
{{route('one-route')}} or {{route('two-route')}}