繁体   English   中英

Laravel 5.1名称路由错误

[英]Laravel 5.1 name routes error

对于某些我不了解的事情,我需要您的帮助。

我正在通过此页面上的一些教程(西班牙语,我的语言)来学习Laravel: https ://styde.net/proyectos/

首先,我毫无问题地完成了Cursobásicode Laravel 5链接到教程 )。 但是现在,我在做Curso de Laravel 5.1链接到教程 )时发现一个问题。

在对第一部分第三点,显示Laravel如何添加路由到routes.php文件

我有这个URL(从Laravel文档复制),并且工作正常:

Route::get('auth/login', 'Auth\AuthController@postLogin');

但是老师展示了如何做出改变。 他删除了“ auth /”,这是新的代码:

Route::post('login', 'Auth\AuthController@postLogin');

之后,他展示了如何使用“名称”,并进行了其他更改:

Route::get('login', [
'uses'  => 'Auth\AuthController@getLogin',
'as'    => 'login'
]);

他去形成,并通过改变行为

{{ route('login') }}

最后,他单击了按钮(表单用于登录,仅用于电子邮件和密码)。

响应显示错误:电子邮件和密码为空。 没关系。

但是我有一个重要的错误:

MethodNotAllowedHttpException in RouteCollection.php line 201:

错误截图

有人可以帮忙吗? 比你!!

您有Route::get ,但我认为应该是Route::post

MethodNotAllowedHttpException表示您输入了错误的类型请求(例如,尝试使POST到GET路由)

我认为您需要两条路线:

Route::get('login', array(
   'uses'  => 'Auth\AuthController@getLogin',
   'as'    => 'getLogin'
));

Route::post('login', array(
   'uses'  => 'Auth\AuthController@postLogin',
   'as'    => 'postLogin'
));

要进入登录页面,请使用URL::route('getLogin') ,在表单操作中请使用URL::route('postLogin'); 并确保您在Auth \\ AuthController中拥有这2个方法! getLogin执行视图的返回,并为登录过程发布postLogin发布数据!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM