【问题标题】:password-confirmation doesn't work after changing password field name in laravel在 laravel 中更改密码字段名称后密码确认不起作用
【发布时间】:2018-08-04 13:58:55
【问题描述】:

我将身份验证表更改为“students”表,数据库中的列名称为“Password”,并将注册刀片上的密码字段名称更改为“Password”,电子邮件也是如此,它的“Email”而不是“email”对于数据库和表单字段,在我向控制器添加验证之前一切正常:

    $this->validate($request, [

        'Email' => 'required|string|email|max:255|unique:students',
        'Password' => 'required|string|min:6|confirmed',
    ]);

当我从控制器中删除此代码时,一切正常,但是当我添加它并尝试提交注册表单时,它显示密码确认不匹配。

【问题讨论】:

    标签: laravel


    【解决方案1】:

    您说您更改了密码字段并且您还确认了验证,因此您还必须更改密码确认字段
    这是来自 laravel 文档的引用

    确认

    正在验证的字段必须有一个匹配的字段 foo_confirmation。例如,如果正在验证的字段是 密码,匹配的密码确认字段必须存在于 输入。

    【讨论】:

    • 现在它将我重定向到注册表单页面,没有任何消息,但密码和密码确认字段为空!
    • 我猜你需要分享更多你的代码来看看发生了什么我不能盲目。
    【解决方案2】:

    Laravel Documentation 声明:

    验证中的字段必须有匹配的 foo_confirmation 字段。例如,如果验证的字段是密码,则输入中必须存在匹配的密码确认字段。

    因此,您应该确保存在名称为 Password_confirmation 的输入字段,以便验证通过。

    【讨论】:

    • 我应该改变什么吗?我按照你的说法重命名了确认字段,但现在在我提交后将我重定向到注册表单页面,没有任何消息,但密码和密码确认字段为空!
    猜你喜欢
    • 2021-02-22
    • 2022-01-16
    • 2016-12-21
    • 1970-01-01
    • 1970-01-01
    • 2021-06-21
    • 2018-02-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多