为什么在Laravel中不能使用POST路由

时间:2016-06-27 16:05:22

标签: laravel laravel-5

我在Laravel中使用标准身份验证机制。

路线路径为:

<form method="POST" action="/auth/register">

HTML表单是:

Route::get('auth/register', 'Auth\AuthController@getRegister');

当我提交表单时,我收到404错误。

但GET方法的工作原理是:

preg_match_all("/(.*?\.jpg)/", $str, $out);
Var_dump($out[1]);

2 个答案:

答案 0 :(得分:1)

使用Laravel的帮助函数url()生成绝对URL。在您的情况下,代码将是:

<form method="POST" action="{{ url('auth/login') }}">

您还可以查看laravelcollective forms package。在L4之后,这些类被从核心中移除。这样您就可以仅使用PHP构建HTML表单:

echo Form::open(['url' => 'auth/login', 'method' => 'post'])

答案 1 :(得分:0)

您可以在action方法中使用{{URL :: route('register')}}函数。在这种情况下,方法将是:

action="{{ URL::route('register') }}"

,您的路线文件将是: `

Route::get('auth/register',array('as' =>'register' ,'uses' => 'Auth\AuthController@getRegister'));

Route::post('auth/register', array('as' =>'register' ,'uses' =>'Auth\AuthController@postRegister'));

`