密码确认在 Laravel Nova 中无法正常工作

问题描述 投票:0回答:1

我正在努力在 Laravel Nova 资源中设置密码确认字段。

在 AppServiceProvided.php 中我有:

use Illuminate\Validation\Rules\Password;

 Password::defaults(function () {
            return Password::min(8)
                ->letters()
                ->numbers()
                ->symbols()
                ->mixedCase();
        });

在我的 User.php 中我有:

Password::make(__('Password'))
                ->onlyOnForms()
                ->creationRules('required', Rules\Password::defaults())
                ->updateRules('nullable', Rules\Password::defaults()),

PasswordConfirmation::make('Password Confirmation'),

但是,通过这些字段,我可以输入两个不同的密码并仍然提交表单。

laravel laravel-nova
1个回答
0
投票

嗨,乔恩,希望你今天过得愉快:3

我看到您在没有确认字段的情况下实现了密码验证,它确保您已定义了密码和password_confirmation字段

1_有一个片段如何将确认实现到您的 user.php 中。

 Password::make(__('Password'))
        ->onlyOnForms()
        ->creationRules('required', 'confirmed', Rules\Password::defaults())
        ->updateRules('nullable', 'confirmed', Rules\Password::defaults()),
Password::make(__('Password Confirmation'), 'password_confirmation')
    ->onlyOnForms()
    ->creationRules('required')
    ->updateRules('nullable'),

创建规则('必需')将确保创建过程中需要两个输入

2_ 还确保 appServiceProvider 正确设置您在代码中提供的默认密码规则

3_ 还要确保您的密码确认字段输入的表单输入名为“password_confirmation”,laravel 会自动将其与您在密码字段中应用的确认规则进行匹配

 name="password_confirmation"

我希望它对您有用,如果您有任何疑问,请随时在这里回复!

© www.soinside.com 2019 - 2024. All rights reserved.