Как получить сообщение проверки в laravel-validation-rules / credit-card - PullRequest
0 голосов
/ 15 апреля 2019

Я использовал валидатор Laravel для информации о кредитной карте в соответствии с указаниями здесь . Наконец-то я могу позволить ему работать, но моя проблема в том, как сделать так, чтобы результат читался пользователем. Я также использую валидацию 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

UPDATE

Я видел его исходный файл и сообщения, но я не хочу напрямую изменять файлы поставщика. Я попытался добавить custom в validation.php, но он не работает.

'custom' => [
    'validation.card_length_invalid' => '無効なカード長',
    'validation.credit_card' => 'クレジットカード',
],

1 Ответ

3 голосов
/ 15 апреля 2019

Ваш массив в validation.php близок к правильному.Попробуйте изменить ключ верхнего уровня на credit_card вместо custom, как они есть в исходном коде .Я не уверен на 100%, но я не думаю, что этот пакет поддерживает сообщения в массиве custom, как это делают обычные правила Laravel.Например:

'credit_card' => [
   'card_length_invalid' => '無効なカード長',
   'credit_card' => 'クレジットカード',
],
...