我按照指示使用了 Laravel 验证器来获取信用卡信息 here 。 我终于可以让它工作了,但我的问题是如何使其结果可供用户读取。我也在使用 Laravel 验证,如下所示:
public static function validate()
{
$val = [
'card_num' => ['required', 'numeric', new CardNumber],
];
return $val;
}
所以,如果我点击提交按钮并且字段为空,结果是card numは必须です。
这意味着卡号是必需的。如果我提供了无效的卡号,结果是 validation.credit_card.card_length_invalid
,如何才能使其具有与将该字段留空相同的结果?当在 Blade php 中收到验证错误时,我确实喜欢这样。
<div>
<label>カード番号</label>
<input type="text" name="card_num" id="credit-card" value="{{ old('card_num', $user['card_num']) }}" >
</div>
@if ($errors->has('card_num'))
<p class="alert-error">
{{ $errors->first('card_num') }}
</p>
@endif
更新
我已经看过它的源文件和消息,但我不想直接更改供应商文件。
我尝试在 validation.php
中添加 custom
,但它不起作用。
'custom' => [
'validation.card_length_invalid' => '無効なカード長',
'validation.credit_card' => 'クレジットカード',
],
最佳答案
validation.php 中的数组接近正确。尝试将顶级 key 更改为 credit_card
而不是像 source code 中那样的 custom
。我不是 100% 确定,但我不认为这个包像普通 Laravel 规则那样支持 custom
数组中的消息。例如:
'credit_card' => [
'card_length_invalid' => '無効なカード長',
'credit_card' => 'クレジットカード',
],
关于php - 如何在 laravel-validation-rules/credit-card 中获取验证消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55687063/