我开始学习一个新的laravel并尝试通过构建小项目来学习它,以创建我的初学者站点,但我遇到了问题 . 我只创建没有任何插件的新项目 . 我的登录和注册表格有问题 . 我把它放到路线文件中:
get('user/login', 'Auth\AuthController@showLoginForm');
post('user/login', 'Auth\AuthController@postLogin');
get('user/register', 'Auth\AuthController@showRegistrationForm');
post('user/register', 'Auth\AuthController@register');
并登录并注册表格 . 它向我展示了一个表单,但我无法提交它,我不知道如何插入数据库或如何验证用户凭据 . 你能告诉我如何在新的beta Laravel框架中做到这一点吗?
问题是Laravel向我显示了登录和注册表单 . 但是当我点击提交时它没有做任何事情,只刷新页面 . 我将method =“POST”action =“”放入表单中 . 当我改变
public function register(RegisterRequest $request)
成
public function register()
在App \ Http \ Controllers \ Auth \ AuthController中,当我提交表单时,它会给我一个错误,即$ request无法找到 .
你可以看到所有代码:this link
1 回答
当您使用请求时,这就是它在Laravel 5中的工作方式 . 如果以这种方式注入Request对象:
在
RegisterRequest
验证您的数据成功之前,不会执行此函数的代码 .看看你的规则:
您需要确保您的数据通过这些规则 .
您还应该在表单中添加显示错误:
以表格形式显示验证错误 .
EDIT
代码中的一切似乎都很好 . 正在启动有效功能 . 如果您不相信我,请将
register
功能更改为:您得到的错误是因为如果从函数参数中删除
RegisterRequest $request
,则以后不能使用$request->email;
,因为它未定义