0

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

App\Auth\Http\Controllers\Auth

/**
 * 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'
    ]);
}

last-namefirst-nameregister-email是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列,但是在创建方法中我指定了email数据库中的列,而不是register-column,它是我的注册表单的 html 输入名称。请帮忙。

顺便说一句,这是我的数据库迁移

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();
    });
}
4

0 回答 0