Laravel验证登录表单验证在密码确认中失败


Laravel Validation Login form validation fails in Password confimation?

我有两个表单,登录和注册表单,以及一个用户模型,我在User类中设置了我的规则和消息,它们是静态成员,$rules和$messages,我现在面临的问题是,在注册表单中,一切都验证了它应该是什么,但在登录表单中,在我输入正确的电子邮件和密码后,它会给我"密码确认不匹配",这是不应该的,因为登录表单中没有Password_confrimation字段。

用户模型中的规则和消息

public static $rules = [
    'email' => 'required|email',
    'password' => 'sometimes|required|confirmed',
    'password_confirmation' => 'sometimes|required'
    ];
public static $messages = [
    'email.required' => 'The email is required',
    'email.email' => 'the email attribute is not in a email format',
    'password.required' => 'the password is required'
];

登录操作

    $validateUser = Validator::make($inputs, User::$rules, User::$messages);
    $user = new User();
    $user->email = $inputs['email'];
    $user->password = $inputs['password'];

我在我的项目中喜欢这样

public static $rules = array(
                        'email'      => 'required|email|unique:users,email',
                        'password'   => 'required|min:6',
                        'repassword' => 'same:password',
                        'group'      => 'exists:groups,id',
                        'last_name'  => 'required',
                        'first_name' => 'required',
                       );

试试看。