[英]Laravel3: How can I forward post methods to action of controller?
Route::get('admin/user/add', function()
{
if (!Input::has('submit'))
return View::make('theme-admin.user_add');
else
Redirect::to('admin@user_add_process');
});
對admin/user/add
正常GET request
顯示了注冊表單。 但是,當提交表單時,我必須將其重定向到Admin controller
action_user_add_process()
函數,以便我可以將值保存到數據庫。
上面的解決方案不起作用,我得到了404。
我稱之為表格動作:
action="{{ URL::to('admin/user/add') }}">
我該如何解決這個問題?
PS。 如果有更短的方法來實現這一點,請告訴我!
您需要使用Redirect的to_action()
方法指定要重定向到控制器操作。
return Redirect::to_action('admin@user_add_process');
或者,您可以使用此URL甚至不使用您創建的路徑,使if / else無關緊要。
{{ URL::to_action('admin@user_add_process') }}
第三點,保持路線清潔使維護更容易前進。 路線使用寧靜的方法,利用它。 使用相同的URL,您可以創建並返回帶有GET請求的視圖,並使用POST請求提交表單。
Route::get('admin/user/add', function() { ... }
Route::post('admin/user/add', function() { ... }
您還可以讓路由自動使用這樣的控制器操作:
Route::post('admin/user/add', 'admin@user_add_process');
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.