我正在学习laravel,我在这里找到了一个初学者项目
https://github.com/mrakodol/Laravel-5-Bootstrap-3-Starter-Site
我想知道程序如何设置/ auth / login使用login.blade.php,我看到路由使用这两行:
Route::controllers([
'auth' => 'Auth\AuthController',
'password' => 'Auth\PasswordController',
]);
主要问题是我没有发现代码的任何部分会使控制器适应login.blade.php。程序如何通过/ auth / login显示登录表单?
答案 0 :(得分:1)
Route::controllers([
'auth' => 'Auth\AuthController',
'password' => 'Auth\PasswordController',
]);
这种类型的route
定义称为隐式控制器。
以上route
与
Route::controller('auth', 'Auth\AuthController');
Route::controller('password', 'Auth\PasswordController);
因此,URI
将为example.com/auth
。
controller方法接受两个参数。第一个是控制器处理的基础URI
,而第二个是控制器的类名。
现在,在控制器中,方法名称应该以它们响应的HTTP谓词开头,然后是URI的标题案例版本。
例如:
public function getLogin()
{
//
}
此方法将负责页面GET
的显示(example.com/auth/login
)。
例如:
public function postLogin()
{
//
}
此方法将对来自POST
URI
的{{1}}请求负责。
如果您查看example.com/auth/login
,可以看到它使用Auth\AuthController
课程。现在,如果您导航到该类,则可以看到另一个使用AuthenticatesAndRegistersUsers.php
类。如果检查此类,则可以看到负责AuthenticatesUsers
和相关函数的所有方法。
同样适用于login
。
在此处阅读有关隐式控制器的更多信息:https://laravel.com/docs/5.1/controllers#implicit-controllers