Nastya
(В этом я просто не шарю немного)
надо компилить scss перед импортом, это я вам как эксперт говорю
Anonymous
Ага
Anonymous
Понял, ок
Anonymous
Сейчас пойду гуглить, как это делать, спасибо за подсказку
Nastya
да есть какие-то даже онлайновые конвертеры, попробуйте
Anonymous
Да, уже нашел
Anonymous
Компилить же надо scss to css? (глупый вопрос, но чтобы наверняка)
Nastya
ну да
Anonymous
* ".glyphicon" failed to @extend ".fa". The selector ".fa" was not found. * Каким-то образом надо импортнуть, получается? Примерно так? @import '/vendor/fortawesome/font-awesome/css/font-awesome.css';
👀
Привет всем! Подскажите: есть-ли у yii2 какой-нить ништяк, который позволяет прервать валидацию если правило вылетело? в rules что-то наподобии [['consignee'], 'validateHasBanned']
Максим
что значит правило вылетело? фатал эррор?
👀
вернуло false, ошибку
Anton
валидируются все атрибуты
👀
ну я смотрю по коду что там перебираются валидаторы
👀
в rules, насколько я понимаю, каждый элемент массива - отдельный валидатор
👀
если валидатор вернул false (атрибут не валиден), можно-ли на этом месте прервать валидацию?
Максим
а смысл? пусть уже добьет до конца и не пропустит дальше действие в любом случае
👀
предположим что дальше по коду ещё, например, 10 проверок с обращением к БД, и я хотел-бы их избежать
Anton
наверное, только наследовать ActiveRecord и реализовывать свой validate() с блэкджеком
Максим
а что если использовать разные сценарии? сначала один, где валидируется только один параметр, если true - то другой зарядить, где будет проверяться все остальное
👀
наверное во время валидации подмена сценария не даст никакого эфекта
👀
ибо там в validate() идёт ->getActiveValidators(), в котором валидаторы выбираются по сценарию
👀
мы ж будем продолжать валидировать по первому сценарию :)
Максим
наверное во время валидации подмена сценария не даст никакого эфекта
после валидации новую модель создать с новым сценарием, и $model->load заполнить ее
👀
да проще чем такое разводить модельку унаследовать :D
👀
я просто думал что уже реализовано, дабы не велосипедить
👀
в доке по skipOnError немного другое пишут
👀
правило не будет применяться если для этого поля уже существует ошибка
👀
хотя
👀
хм
👀
можно нагородить и так
Максим
все же я думаю, что подмена сценария должна сработать)
👀
можно просто все правила валидации под одно поле запилить, и skipOnError но в идеале хотелось-бы получить вариант обрыва всех сценариев валидации на определённом месте
Максим
1. Сделать сценарий с валидацией первого поля 2. Если нет ошибки - подменяем сценарий, в котором проверяем все остальное, и опять валидируем
The Ant
1. Сделать сценарий с валидацией первого поля 2. Если нет ошибки - подменяем сценарий, в котором проверяем все остальное, и опять валидируем
если нам нада сделать 40 проверок, из них 20 по сценарию "дальше не идем" будешь 20 сценариев делать? ;D
The Ant
да и так нормльная логика. все ошибки сразу подсветит
Dmitry
Вообще блин, чё за бред вы тут обсуждаете? Если нужно менять дефолтное поведение валидации модели, то нужно писать свою валидацию. А не строить замок из говна и палок.
👀
да понятное дело что свою писать :) я ж спрашивал есть-ли что готовое
Dmitry
И вообще, это получается схема самого ужасного интерфейса. Где форму заполнить можно с 40 раза пока все поля отдельно пошагово пройдешь с этими прерывистыми валидпторами
👀
надо добавить в /yii/validators/Validator поле dieIfError, и одну дополнительную проверку в Model->validate(), и вопрос решён :)
👻
сделать вместо формы мастер
👻
и на каждом этапе проверять в своей модели
Dmitry
да понятное дело что свою писать :) я ж спрашивал есть-ли что готовое
Можно вам в лицо плюнуть? , всегда хотел найти людей, из-за которых над одной формой сидишь 30 минут, а потом оказывается, что на последнее поле ты не знаешь чем заполнить т.к. у тебя нет представления чем это заполнить
The Ant
надо добавить в /yii/validators/Validator поле dieIfError, и одну дополнительную проверку в Model->validate(), и вопрос решён :)
потом дрочить юзера по одной ошибке на 40 полях чтоб исправлял. збс идея, мне нравится ))
Dmitry
Делите форму на стейджи в конце концов
👀
нет валидация у меня происходит в API моя задача - реализовать "на новый лад" одно старое API данные в API идут как POST, + там есть поле data с xml'кой внутри
👀
вот для этой xml'ки валидацию я и делаю
Dmitry
Это же сколько раз нужно сабмитить форму, чтобы правильно заполнить поочередно 40 полей?
👀
если пользователь забанен, смысл проверять, были-ли от него ещё какие-то сущности?
Nastya
Дмитрий, вы будто недавно налоговую декларацию онлайн заполняли. откуда столько страсти? :D
Dmitry
Забанен ли пользователь у вас должен проверять аут менеджер или рбак
👀
пользователь забанен, всё, баста пиши в поддержку, спрашивай почему
👀
Забанен ли пользователь у вас должен проверять аут менеджер или рбак
я ж уточнил, что валидация для данных внутри xml'ки
Dmitry
И давать код 403
👀
я не хочу сейчас расписывать всех особенностей реализации системы, просто оно должно вернуть одну единственную ошибку если пользователь забанен
Dmitry
Вы в одну модель по факту лепите кучу логики, которая относится к зоопаркам как таковым.
👀
сколько логики?
👀
вы мою модель видели?
👀
я здесь за один валидатор спросил
👀
за существование в фреймворке из коробки необходимого функционала
👀
я никакого кода не предоставлял
👀
у меня есть повторяющаяся в многих местах модель пользователя - Consignee, которому будет отправлена (допустим) посылка вот этого пользователя нужно валидировать тот кто отправляет посылку уже давно провалидирован
Dmitry
я здесь за один валидатор спросил
Загрузил человек xml, окей. Тут вы дали ошибку, что поле неверное, он его исправил. Далее по кругу и каждый раз нужно будет ему править его под каждое поле отдельно, вместо того, чтобы один раз увидеть все ошибки и быстро все поправить
Максим
если пользователь забанен, смысл проверять, были-ли от него ещё какие-то сущности?
если он забанен, почему API вообще что-то проверяет) Можно узнать, забанен или нет и без валидации
👀
для остальных полей всё работает так как вы сказали
👀
да ёб
👀
ладно
👀
смысл здесь срач разводить
👀
спасибо
👀
я выше отписал
👀
у меня есть повторяющаяся в многих местах модель пользователя - Consignee, которому будет отправлена (допустим) посылка вот этого пользователя нужно валидировать тот кто отправляет посылку уже давно провалидирован
👀
вы всей архитектуры не знаете, и уже каждый со своим решением лезет наставлять на путь истинный
Dmitry
В данной реализации yii всё так как реализовано - реализовано не просто так. Кмк вы заведомо уже на ложном пути. Пересмотрите бизнес логику вашего приложения.
Максим
вы всей архитектуры не знаете, и уже каждый со своим решением лезет наставлять на путь истинный
в итоге и будет решение из 40 шагов с сотней условий в валидаторах
👀
эт если сделать по вашей логике с сценариями
Максим
Я уверен, что все можно сделать проще