Laravel 5.1 AuthController验证并创建

时间:2015-07-05 04:05:39

标签: php forms validation laravel-5 laravel-5.1

我在authController中的laravel 5.1注册中遇到了验证和创建方法的问题。我可以登录并在一个页面中注册表格,所以我在注册表格的输入上添加了注册 - (例如注册电子邮件,用于注册表格中的电子邮件地址) )。所以我在AuthController中的验证方法就是:

应用\验证\ HTTP \控制器\验证

/**
 * Get a validator for an incoming registration request.
 *
 * @param  array  $data
 * @return \Illuminate\Contracts\Validation\Validator
 */
protected function validator(array $data)
{
    return Validator::make($data, [
        'last-name'                 => 'required|between:2,35',
        'first-name'                => 'required|between:2,35',
        'register-email'            => 'required|email|max:255|unique:users',
        'register-password'         => 'required|confirmed|min:8',
        'register-confirm-password' => 'same:register-password'
    ]);
}

姓氏名字注册电子邮件是html输入权利?所以我认为这是对的? 然后这是创建方法:

protected function create(array $data)
{
    return User::create([
        'last-name'   => $data['last-name'],
        'first-name'  => $data['first-name'],
        'email'       => $data['register-email'],
        'password'    => bcrypt($data['register-password'])
    ]);
}

create方法中的键是数据库表吗?和值是html输入名称/ ID?我收到register-email的未知列错误原因是什么?我知道我在数据库中没有 register-email 列,但是在create方法中我指定了数据库中的email列而不是 register-column < / strong>这是我的注册表单的html输入名称。请帮忙。

BTW这是我的数据库迁移

public function up()
{
    Schema::create('users', function (Blueprint $table) {
        $table->increments('id');
        $table->string('last-name');
        $table->string('first-name');
        $table->string('email')->unique();
        $table->string('password', 60);
        $table->rememberToken();
        $table->timestamps();
    });
}

0 个答案:

没有答案