Good
А чем плохо? Я вот думаю вместо еав делать как раз JSON поля. ПО ним же поиск норм, выборка, и т. д. А ЕАВ кажется какой-то уж очень громоздкой
Vitaliy
PowerAxis
PowerAxis
как по мне - сделал тип поля value json и погнал
Vitaliy
и шаред хостинг найти со свежей mysql
PowerAxis
Проблемы негров шерифа не волнуют
SiZE
PowerAxis
В чем?
SiZE
OpenCart
PowerAxis
А как там?
who are you
who are you
или фильтр
SiZE
Вообще для товара, если его дохрена делается индексация в elasticsearch и там уже гонишь куда хочешь
PowerAxis
who are you
тоже аналогичная задачка стоит, сделать сраные характеристики товаров чтобы были разные где то бул где то селективный список, но чот это тяжеловато осмыслить как все устроить ) хоть бы на ютубчике кто нить запилил ))
Vit
Оооо
Good
Ну так как, по json полю же выборка работает
who are you
OpenCart
по моему в нем вообще повеситься можно )
who are you
😄 или он почти как йии ?
PowerAxis
Не, совсем не такой
Good
Знакомому пробовал обновить на новую версию - завесится можно
who are you
http://shot.hsdn.org/K6mrWVjF
who are you
можно ли в этом случае сделать фильтрацию?
who are you
👀
Good
http://www.yiiframework.com/doc-2.0/yii-base-model.html#addError()-detail
Good
Гуглится за пару секунд
Steel
http://shot.hsdn.org/K6mrWVjF
Если делал основу в gii, то в модели поиска сделать поле для этого, а его уже разбирать в modelSearch::search(), т.е. добавлять несколько условий в where по разным физическим полям модели
who are you
Good
Но я еще не пробовал, если че)
Good
Пишут, что медленнее будет
Good
Реально, хотелось бы вместо EAV использовать JSON поля
Pavel
Pavel
ну смотри, мне нужно проверить что нет дубликатов в бд, для этого мне достаточно сделать try catch (IntegrityException) и в случае catch выдать ошибку. но писать это в validate() нельзя ведь тогда при смене пароля, например, оно будет выдавать эту ошибку
Good
Чтобы не было дубликатов, делай в БД уникальное поле, и валидатор unique, тогда точно не будет. Зачем отдельно проверять?
Pavel
ааааа
Pavel
есть валидатор unique
Good
А у тебя какое-то извращение с отловлей ексепшнов)
Pavel
тогда все намного легче
Good
Есть. конечно)
Good
В любом случае, проверяется по какому-нижуть полю
Pavel
Pavel
я так понимаю нужен метод find
Good
Потому-что модель формы, это просто модель, а не ActiveRecord, соответственно, она не может валидовать unique, так как нужно делать запрос к базе. Для этого есть свойства в валидаторе, где нужно прописать модель, которая уже работает с базой (User, очевидно)
Good
https://yiiframework.com.ua/ru/doc/guide/2/tutorial-core-validators/#unique
Pavel
аааа ну тогда активформ
Good
Тут есть
Pavel
я понял
Pavel
я в юзер пропишу этот рул
Good
Good
Нет. не понял
Pavel
но тогда ошибка про поле в вью
Good
В Юзер нужно, да. он отвечает конкретно за работу с базой
Pavel
не будте асоциирована с полем
Pavel
ведь поля в форме асоированы с signupform
Good
А в модель формы нужно прописать с дополнительными параметрами, чтоб оно знало, где искать
Pavel
может сделать User->validate частью DingupForm-validate()
Good
Посмотри, как там оно все работает - есть модель формы, она заполняется юзерскими данными, и проверяется своими валидаторами. Если все ок, и ошибок нет, тогда там уже сохраняется модель зер
Good
юзер
Pavel
да у меня так же
Pavel
но мне нужно чтобы эта ошибка показалась пользователю во вью
Good
Соответственно, нужно иметь в модели формы валидатор уникальности, в котором заданы дополнительные параметры, которые указывают, какую модель использовать для проверки уникальности (в данном случае, юзер)
Good
Я ж кинул ссылку, там написано
Pavel
аааа targetClass
Good
Ага
Good
Ну да
Pavel
госопди вот же я тупой
Good
Та класс модели
Good
Там
Good
Бывает)
Pavel
очень тупой вопрос, но имя класса как string?
Good
Да
Good
Полное, с неймспейсом
Good
Лутше использовать User::class
Good
А у тебя какой?