【问题标题】:Laravel: how change rules of validation in reset passwordLaravel:如何更改重置密码中的验证规则
【发布时间】:2019-09-27 10:35:16
【问题描述】:

如果用户在尝试重置密码时输入了错误的电子邮件,他会收到错误消息“passwords.user”。我正在尝试覆盖特征 Auth/ResetsPasswords.php 的规则和消息的方法,但我的用户得到了所有相同的消息

这是我的控制器

class ResetPasswordController extends Controller
{

    use ResetsPasswords;

    public function __construct()
    {
        $this->middleware('guest');
    }

    protected function rules()
    {
        return [
            'email' => 'exists:users.email',
        ];
    }

    protected function validationErrorMessages()
    {
        return [
            'email.exists' => 'The email is not registered',
        ];
    }
}

trait 方法不包含密钥 'passwords.user'

protected function rules()
{
    return [
        'token' => 'required',
        'email' => 'required|email',
        'password' => 'required|confirmed|min:6',
    ];
}

但它在文件夹 config/auth 中

'defaults' => [
    'guard' => 'web',
    'passwords' => 'users',
],

重置密码时如何添加自己的规则和错误消息?

【问题讨论】:

    标签: laravel validation


    【解决方案1】:

    编辑:我已经更正了之前的答案,因为我指向了错误的文件

    您正在寻找的文件,用于翻译您的消息在resources/lang/en/passwords.php 中,您可以在那里自定义che 'user' 条目。

    当然,如果 en 不是您当前的语言环境,请将该目录更改为您的语言

    【讨论】:

    • 我照你说的做了,可惜问题没敢
    • 'custom' => [ 'passwords' => [ 'users' => 'Електронна адреса не знайдена', ], ],
    • 您不应该添加custom,而只需在validation.php返回的数组中添加passwords作为键
    • PasswordBroker 接口有 const INVALID_USER = 'passwords.user';如果他犯了错误,用户会看到这条线。你能告诉我如何改变这条线吗?
    • 非常感谢您的帮助。你帮了我很多。添加具有所需语言的文件夹并翻译对我有用的必要消息。 =)
    猜你喜欢
    • 2015-10-10
    • 2020-07-17
    • 2017-03-14
    • 1970-01-01
    • 2013-07-24
    • 2019-12-11
    • 2021-08-30
    • 2019-10-24
    • 1970-01-01
    相关资源
    最近更新 更多