Sergey
ну тогда в beforeSave
тоже не работает, всё равно \CActiveRecord::setAttribute в meta пишет
Sergey
придется сеттер напрямую вызывать
Alexander
beforeSave на сеттеры не влияет
Alexander
AR сделан не через статические методы
Alexander
если имеется ввиду ::find() — то это обычная статическая фабрика, возвращающая Query
Alexander
который не статичен
Ярослав
Вот оно как :)
Ярослав
Нужно почаще в подноготную фреймворка залазить и не будет глупых вопросов)
Ярослав
@samdark Спасибо
Ярослав
@samdark А разве вызов Model::find() в другой модели OtherModel не сделает код более жестко связанным?
Alexander
сделает, конечно
Alexander
как и вызов $model->find()
Alexander
одно другого не лучше
Ярослав
Но если вызов будет $model->find(), то человеку прийдется задуматься откуда взять этот $model И это подтолкнет человека к использованию DI , либо другому способу композиции
Ярослав
Я абсолютно согласен, что это не проблема фреймворка, но мне итересно с вами это обсудить
Alexander
м... ну юзайте new ActiveQuery(Post::class)
Alexander
там очень тонкий метод
Alexander
в нём практически ничего нет
Alexander
а вообще добиваться слабой связанности в контроллере не вижу смысла
Alexander
хотя не, это я в оффтоп, не про контроллеры речь в этот раз :)
Ярослав
А я вот как раз говорю именно о связях сущностей и их взаимодействии)
Ярослав
С контроллерами ситуация более менее ясна
Alexander
ну тут вроде методы не при чём
Alexander
хочется слабой связанности — юзаем композицию и интерфейсы
Alexander
чаще всего компоненту не интересно, AR у нас там или нет
Alexander
главное чтобы методы нужные были
Ярослав
@samdark Есть еще один важный момент, у вас нет случаем никакой ссылочки на Opensource проект, использующий yii2 (только не бложик, а боевую систему) ? Мне было бы интересно посмотреть как в других проектах реализована структура проекта и связи между компонентами
Alexander
http://yiipowered.com/en/projects?title=&url=&opensource=1&featured=0&yiiVersion=2.0
Alexander
кстати
Alexander
добавляйте все свои проекты туда
Alexander
будет хорошо и проектам и фреймворку
Ярослав
Обязательно, как только научусь неговнокодить)
Alexander
такого не будет :)
Alexander
говнокодят все
Ярослав
кстати, я об этом даже не думал
Ярослав
ахах
𝕂𝕠𝕟𝕤𝕦𝕝
http://yiipowered.com/en/projects?title=&url=&opensource=1&featured=0&yiiVersion=2.0
Александр, добрый день. Вы, вроде, занимались codeception под yii2. У меня вопрос, задавал выше, ща повторю
𝕂𝕠𝕟𝕤𝕦𝕝
>Народ, подскажите, плз, как в yii2 теперь работать с фикстурами для тестов? Пакет yii2-codeception был deprecated, но там была интеграция фикстур (загрузка и пр.) при запуске тестов. Как теперь без этого пакета запускать фикстуры в юнит-тестах?
Alexander
http://codeception.com/for/yii
Dmitriy
http://yiipowered.com/en/projects?title=&url=&opensource=1&featured=0&yiiVersion=2.0
Что-то там слишком простые проекты. Я как-то спрашивал тут. Но я так не нашел не одного норм сложного проекта в ОС на yii2 Где хотябы используется DI нормально или есть репозитории
Юрий
будет хорошо и проектам и фреймворку
и плохо за нарушения NDA (: могу только сказать что сайт из топ-5 коммерческих по РФ
Alexander
не, если NDA, то не надо
Alexander
:)
Alexander
сложных проектов в принципе в опенсорсе мало
Alexander
сложная обычно доменная область
Dmitriy
да даже простые. обычно все ос проекты "это модель которая умеет все"
Alexander
а так, можно на тему сложных почитать, например у http://www.elisdn.ru/
Dmitriy
Есть планы переделать url ? контроллер/действие уже устарело в современном мире
Alexander
есть
Alexander
в загашнике, пилится
Alexander
пока не ясно. релизнем или нет
Alexander
в controller/action, хоть и не модно, есть плюсы
Alexander
не надо идти искать алиас
Dmitriy
1 плюс ради много минусов
Ярослав
а в чем минусы заключаются? мб ссылку на статью какую подкинете
Alexander
минусов особо нет :)
Alexander
в первую очередь, не модно
Alexander
во-вторую, если хочется использовать 1 action на класс, всё-таки приходится заводить контроллер
Alexander
больше ничего не придумывается
Dmitriy
минусов особо нет :)
Ну конечно. Нельзя по нормальному организовать пост гет методы. Если нужно что-то сложнее чем стандарт. Приходится пилить свой роутинг. На больших проектах роутинг превращается в ад.
Alexander
почему нельзя?
Alexander
и что значит по-нормальному?
Alexander
Почему превращается? У нас норм было всё с роутингом. Во что именно упёрлись?
Ярослав
Я тоже не до конца понял, что значит по нормальному. Можно более подробно?
Alexander
роутер Yii поддерживает правила вроде PUT /api/2.0/article => api2/article/put
Alexander
так что очень хочется инфы
Dmitriy
Почему превращается? У нас норм было всё с роутингом. Во что именно упёрлись?
На счёт усложния. Например взять добавление языка в юрл. В других фреймах я делаю миддваре и она сама разруливает язык в юрл. Тут же нужно переопределить и написать свой роутинг. Он не такой гибкий из коробки
Alexander
ды... нет
Alexander
github.com/codemix/yii2-localeurls/
Alexander
без переписывания URL
Alexander
работает со стандартными правилами
Danil
имхо вполне норм функционал из коробки. Лишняя функциональность избыточна...
Alexander
тот же http://yiipowered.com/ бегает на localeurls
Alexander
middleware — это мы уже про другую тему начали
Alexander
в эту сторону тоже щупаем
Dmitriy
Роутинг не умеет ходить в под папки. Или я так и не понял как заставить роутинг в зависимости от пути, правила ходить в левые папки. Без модулей
Alexander
не, не умеет
Jakhongir
Добрый вечер, добавил фильтры в ActionForm отдельно от GridView, как можно настроить ActionForm, чтобы было больше похоже на фильтры? сейчас поля очень широкие
Jakhongir