2015-11-03 38 views
1

我有一个刀片页面有一个形式更新和另一人救多种形式在一个页面中Laravel 5.1

我的问题,根据上述方法类型

我试图做到这一点我如何可递交像下面的例子

public function postCompanyProfileSettings(Request $request) 
{ 

    if($request->isMethod('POST')) { 
      // do something to save 
     } 
    if($request->isMethod('PUT')) { 
     // do something to update 
    } 
} 

它与POST方法行之有效,但与PUT回路异常MethodNotAllowedHttpException in RouteCollection.php line 219:

我认为是t他发出的routs.php但我不知道到底该怎么做处理多个形式中的一种途径(多种方法)

我的路线route.php文件

//setting routes... 
get('/home/settings', '[email protected]'); 
post('/home/settings','[email protected]'); 

难道有什么实现这一目标的方式?

+0

哪里是你的路线put方法? – aldrin27

+1

@ aldrin27:这是我的问题,我不知道究竟要做什么来处理多种形式(多种方法)的一条路线 **有没有什么办法可以实现这一点?** –

+2

试试这个:'路线: :match(['get','post','put'],'/',function(){ return'Hello World'; });'匹配您的路线。阅读此http://laravel.com/docs/5.1/routing – aldrin27

回答

1

或者你可以使用一个隐藏的输入

public function postCompanyProfileSettings(Request $request) 
{ 

    if(isset($request->get('update')) { 
      // do something to update 
     } 
     // do something to save 
} 

和路线..

post('/home/settings','[email protected]'); 
1

在我看来,我将使用它POST方法相同。

1形式:

<form method="POST" action={{ url('vault/{batch_centre_id}/candidates/{id}', ['form' => '1']) }}> 

第二形态:

<form method="POST" action={{ url('vault/{batch_centre_id}/candidates/{id}', ['form' => '2']) }}> 
在你的行动支票形式

if ($request->get('form') == 1) { 
return $request->get('form'); 
} else if ($request->get('form') == 2) { 
return $request->get('form'); 
} 

return result; 

因此,从上面可以有一个单一页面上无限形式只要您标记您的表格并从您的控制器验证它们。

入住这answer

相关问题