Php Laravel 5实现自定义寄存器功能
Laravel 5有它的默认寄存器功能,即Php Laravel 5实现自定义寄存器功能,php,laravel,registration,laravel-5.1,Php,Laravel,Registration,Laravel 5.1,Laravel 5有它的默认寄存器功能,即 public function postRegister(Request $request) { $validator = $this->validator($request->all()); if ($validator->fails()) { $this->throwValidationException( $request, $validator )
public function postRegister(Request $request)
{
$validator = $this->validator($request->all());
if ($validator->fails()) {
$this->throwValidationException(
$request, $validator
);
}
Auth::login($this->create($request->all()));
return redirect($this->redirectPath());
}
我知道我可以复制此代码并将其粘贴到我的AuthController
中,但我需要做一个更改,我不知道从何处开始查找。我想要的是更改在我的users
表中插入数据的代码。我想更改这一点,因为我在我的users
表中添加了另一列,即company\u name
,并且我有一个名为companys
的表,因此基本上当用户输入company\u name
进行注册时,它将检查companys
表是否存在,如果存在,则返回错误消息是因此,我认为有这样的情况:
$rules = array(
'company_name' => 'unqiue:companies',
);
但是我不知道把这个东西放在我的注册码里。谢谢在这种情况下,您可以使用自定义验证确保您正在调用
$this->validate()
,而不是$this->validator
如果失败,此验证将自动重定向回错误,因此您可以跳过check语句
公共函数后寄存器(请求$Request)
{
$this->validate($request->all()[
“公司名称”=>“唯一:公司”,
//还有其他的规则,比如电子邮件地址等等。。
]);
Auth::login($this->create($request->all());
返回重定向($this->redirectPath());
}
不要忘记在您的用户模型中添加可填充的公司名称。