【发布时间】:2014-11-26 13:17:18
【问题描述】:
所以我正在学习 Laravel,我正在尝试使用输入到表单中的数据在数据库中创建一个新用户。在我的控制器中,我得到了很好的表单数据,将它传递给了一个验证器,其中一些规则通过了很好,但是当我尝试创建用户时,没有任何东西被添加到数据库中,它重定向到基本的“哎呀,好像出了什么问题。”错误页面而不是我告诉它的页面。
这是我的控制器功能:
public function doRegister() {
$rules = array(
'fname'=>'required|alpha|min:2',
'lname'=>'required|alpha|min:2',
'email'=>'required|email|unique:users',
'company'=>'required|alpha|min:2',
'password'=>'required|alpha_num|between:6,12|confirmed',
'password_confirmation'=>'required|alpha_num|between:6,12'
);
$validator = Validator::make(Input::all(), $rules);
if($validator->passes()) {
User::create(array(
'fname' => Input::get('fname'),
'lname' => Input::get('lname'),
'email' => Input::get('email'),
'password' => Hash.make(Input::get('password')),
'company' => Input::get('company'),
'created_at' => date('Y-m-d H:m:s'),
'updated_at' => date('Y-m-d H:m:s')
));
return Redirect::to('login')->with('message', 'Thank you for registering!');
} else {
return Redirect::to('register')
->with('message', 'The following errors occurred')
->withErrors($validator)
->withInput(Input::except('password'));
}
}
删除 User::create() 部分,重定向工作得很好。刚开始,我已经在我的用户模型的可填充数组中包含了所有数据库字段。还是不行。有什么想法吗?
【问题讨论】: