Сообщение Validate () не работает в laravel - PullRequest
0 голосов
/ 07 мая 2020

моя проверка работает правильно. но не показывал никаких сообщений. Я упоминаю ниже.

в контроллере

$fields = collect([
    'monthly_fees',
    'admission',
    'due_advance',
    'session_fee',
    'library',
    'sports',
    'poor_funds',
    'fine',
    'reciept',
    'milad',
    'scout',
    'development',
    'registration',
    'f_tutorial',
    's_tutorial',
    't_tutorial',
    'f_exam',
    's_exam',
    't_exam',
    'labratory',
    'transport',
    'syllabus',
    'certificate',
    'testimonial',
    'generator',
    'extra'
]);

$rules = $fields->mapWithKeys(function ($field) use ($fields) {
    return [
        $field => 'required_without_all:' . $fields->reject(function ($item) use ($field) {
                return $item == $field;
            })->implode(',')
    ];
})->toArray();

$this->validate($request, $rules);

в представлениях

@if (count($errors) > 0)
    <div class="alert alert-danger">
        <ul class="text-center">
            @foreach($errors->all() as $error)
                <li>{{ $error }}</li>
            @endforeach
        </ul>
    </div>
@endif

Я также использую эти строки кодов в контроллере, но не сработало.

if($this->validate()->fails()) {
   return redirect()->back()->with('error','Please Input minimum 1 field...');
}

Я хочу заполнить минимум 1 поле. У меня 26 полей ввода. Я всегда использую эти коды для одноразового использования. но на этот раз нужно проверить минимум одно поле. Эти коды подтверждают, что требуется, но не показывают никаких сообщений, хотя я упоминал об ошибках в блейде. не могли бы вы помочь мне с этими ошибками? заранее спасибо.

1 Ответ

0 голосов
/ 07 мая 2020

Я решил свои проблемы. здесь я использовал $ this-> vatidate (...); это было неправильно для меня. затем я использовал пакет Validator и в случае неудачи возвращает настраиваемое сообщение с перенаправлением. тогда это работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...