Laravel根路径发布方法

时间:2018-02-02 12:21:16

标签: php laravel

我想创建一个表单,所以当我点击提交时,它会使用post方法转到root url。我创建了以下

{{ Form::open(array('route' => array('send'), 'method' => 'post')) }}
...
{{ Form::close() }}

和路线

Route::get('/', 'Controller@home');
Route::post('/', 'Controller@home')->name('send');

但是来自controller的$ request值为null,方法是get而不是post。

3 个答案:

答案 0 :(得分:1)

无需将method=>postroute一起使用,它与url read in docs一起使用。如下所示更改Form::open

无论

{{ Form::open(['route' => 'send']) }}

或者

{{ Form::open( ['url' => '/','method' => 'post'] ) }}

答案 1 :(得分:0)

你有两条路径相同的开头(“\”)指向相同的控制器功能。

尝试用

之类的东西替换第二个
Route::post('/home', 'Controller@homepost')->name('send');

只需复制您的家庭方法,并确保您有类似的内容:

public function homepost (Request $request)
{ .... }

答案 2 :(得分:0)

你可以使用Route::any()如果你想要相同的网址或功能来响应多种类型的请求,比如get,post等。

Route::any('/', 'Controller@home');

或者您可以使用Route::match()

Route::match(['get', 'post'], '/', Controller@home');