Laravel Вопрос про Laravel-валидатор

StalkerClasses

Новичок
Приведу пример:

Код:
'name' => [
    'required' => 'Как вас зовут?',
    'min:2' => 'Имя не менее 2 символов!'
],
'email' => [
    'required' => 'Поле Email-не заполнено',
    'email' => 'Не правильно указан Email-адрес'
 ],
Может быть что-то не понимаю - но можно ли как-то сделать так, что бы показывались все ошибки которые есть в поле.
Сейчас у меня получается если required сработал- то уже min:2 не проверяется. Если required прошел проверку - то уже проверяется min:2 и т.д.

Можно ли как-то сделать что бы все правила сразу проверялись которые заданы для поля и выводились сразу все ошибки а не по 1?
 

fixxxer

К.О.
Партнер клуба
Если поля вообще не заполнено, какой смысл проверять все остальное?
Делай осмысленные комбинации, и все будет.
 

StalkerClasses

Новичок
Наверно пусть лучше будет по порядку каждой правило обрабатываться...
 

Valick

Новичок
Всегда везде бесило это "по порядку", в моём понимании, в момент заполнения формы надо чекать аяксом поле формы при потере фокуса и сообщать все ошибки для этого поля, если клиент что-то ввёл и нажал кнопку отправить, то должны отобразиться все варианты ошибок по всем полям формы.

На моей памяти было пару сайтов на которых не хватило терпения зарегистрироваться именно по причине проверки правильности заполнения формы "по порядку", просто вычёркивал эти сайты из своей жизни.
 

StalkerClasses

Новичок
Всегда везде бесило это "по порядку", в моём понимании, в момент заполнения формы надо чекать аяксом поле формы при потере фокуса и сообщать все ошибки для этого поля, если клиент что-то ввёл и нажал кнопку отправить, то должны отобразиться все варианты ошибок по всем полям формы.

На моей памяти было пару сайтов на которых не хватило терпения зарегистрироваться именно по причине проверки правильности заполнения формы "по порядку", просто вычёркивал эти сайты из своей жизни.
Мне тоже не нравиться по порядку. Покажи сразу все ошибки.
Вопрос по прежнему актуален.

Вот для телефона например:
> Поле обязательно к заполнению
> Поле «Телефон» не должно содержать букв или других символов, кроме «+»

и сообщать все ошибки для этого поля, если клиент что-то ввёл и нажал кнопку отправить, то должны отобразиться все варианты ошибок по всем полям формы.


Как это реализовать в Laravel?
 

Фанат

oncle terrible
Команда форума
Всегда везде бесило это "по порядку"
ты как всегда все напутал
здеь речь идет не о проверке нескольких полей, а о нескольких проверках одного поля
если внимательно прочитать вопрос, то нашего гения интересует видеть ошибку "Поле пустое и к тому же его длина меньше 2 букв!"

С точки зрения твоего "бесит" лара нормально все валидирует
 
Последнее редактирование:

Фанат

oncle terrible
Команда форума
О том, что должно содержать поле телефон, надо писать ДО валидации.
 

Valick

Новичок
здеь речь идет не о проверке нескольких полей, а о нескольких проверках одного поля
я именно об этом и написал, как в контексте одного поля, так и всей формы
"Поле пустое и к тому же его длина меньше 2 букв!"
С точки зрения твоего "бесит" лара нормально все валидирует
это частный случай, я описал общий, который именно "по порядку" и даже без привязки к ларе
 

Фанат

oncle terrible
Команда форума
я именно об этом и написал, как в контексте одного поля, так и всей формы
Именно об этом писать не надо
потому что со всей формой проблем никаких нет, а писать все ошибки в рамках одного поля - это будет текст для имбецилов
Если правила такие сложные и многогранные, то писать их надо ДО отправки на валидацию, то есть в пояснении к форме, а не в сообщении об ошибке

если что - да, меня тоже разумеется бесит когда ошибка выдается только для одного поля, а не для всех. но я уже лет 10 таких форм не видел, так что все это кудахтанье в пользу бедных
 

Valick

Новичок
по порядку
- значение поля обязательно к заполнению
- значение поля должно быть не менее 6 символов
- значение поля должно содержать буквы латинского алфавита
- значение поля должно содержать буквы в верхнем и нижнем регистре
- значение поля должно содержать буквы и цифры

всё вместе
- значение поля обязательно к заполнению, должно быть не менее 6 символов
и содержать цифры, а так же буквы латинского алфавита в верхнем и нижнем регистре

какой из вариантов для имбецилов?

но я уже лет 10 таких форм не видел
у каждого свой интернет
 

Фанат

oncle terrible
Команда форума
какой из вариантов для имбецилов?
если разработчик - имбецил, то он этот текст будет вываливать после после отправки формы
а если нет - до.
и если этот текст у пользователя все равно перед глазами, то написанное в сообщении об ошибке уже не так важно.

не говоря уже о том что таких сложносочиненных полей раз два и обчелся.
в общем случае эта хотелка приносит больше вреда чем пользы
 
  • Like
Реакции: WMix

StalkerClasses

Новичок
по порядку
- значение поля обязательно к заполнению
- значение поля должно быть не менее 6 символов
- значение поля должно содержать буквы латинского алфавита
- значение поля должно содержать буквы в верхнем и нижнем регистре
- значение поля должно содержать буквы и цифры

всё вместе
- значение поля обязательно к заполнению, должно быть не менее 6 символов
и содержать цифры, а так же буквы латинского алфавита в верхнем и нижнем регистре

какой из вариантов для имбецилов?


у каждого свой интернет
Так можно в ларавель так сделать - настаивать не буду.
Полностью согласен что если проверка поля сложная нужно как минимум описать пользователю что и как заполнить.
 

Valick

Новичок
если это все про пароль, то мое мнение на этот счет, "вас не должно волновать, какой пароль я выбираю" и пожалуйста валидируйте только то, от чего зависит работа сервиса
есть ваше мнение, есть моё мнение и есть мнение заказчика
и мнению заказчика частенько плевать на ваше и моё мнение вместе взятые :)

P.S. и да, речь не про пароль, перестаньте приписывать моим словам свои мысли (пароль, ларка и тд)
я описал абстрактный, относительно худший вариант развития событий, но даже если пунктов будет два, а не пять, лично я буду выводить полный перечень возможных ошибок "за одну итерацию", а не "по порядку", в этом и заключается смысл моего поста.
 

Valick

Новичок
StalkerClasses, сделай просто одно сообщение включающее в себя все правила валидации поля для любого из вариантов ошибки.
 
Последнее редактирование:

WMix

герр M:)ller
Партнер клуба
есть ваше мнение, есть моё мнение и есть мнение заказчика
и мнению заказчика частенько плевать на ваше и моё мнение вместе взятые
просто поверь, такая валидация вредная, если меня заставят вводить телефон по стандарту (+Xxx) xx-... я пошлю подальше этот сервис, клиент хочет чтоб его называли ИчРз - его право. если заказчик начнет мне указывать как обязать пользователя к действиям против моей натуры, я поначалу выскажусь, но я никогда на буду делать то к чему у меня отвращение...
 

Valick

Новичок
WMix, да какая такая-то? Вы мне что хотите доказать, что пользователю можно вводить везде всё, что и как он захочет?
Ещё раз повторюсь речь не о конкретных полях и конкретных правилах валидации, а о двух вариантах вывода ошибок, либо "по порядку" (выплёвывать первое сработавшее), либо "все сразу" (проверить значение по всем правилам валидации, и собрать итоговое сообщение, либо на любое сработавшее правило валидации выводить все возможные варианты ошибок, что гораздо проще).
 
Сверху