• Yii. Как вы проектируете свои модели?

    @Zohei Автор вопроса
    В контексте php (в идеале, yii), ссылок на пример удачной реализации под рукой не найдется?)
  • Yii. Как вы проектируете свои модели?

    @Zohei Автор вопроса
    в yii есть сценарии, если вы о них...
    Вывод полей формы в зависимости от прав разруливается автоматом при помощи сценариев и CFrom, довольно удобно.
    В yii2 не знаю как, не смотрел даже, но вроде как валидация там другим путем пошла...
  • Yii. Как вы проектируете свои модели?

    @Zohei Автор вопроса
    ммм.... нет) немного не то. Это то же нужно во все модели модуля прописать один и тот же метод. Вопрос в том как это сделать в одном месте сразу для всех моделей модуля...))
    У меня была безумная мысль унаследовать AdminActiveRecord от CActiveRecord и прописать в нем defaultScopes... тогда все модели админки унаследованные от него подхватят нужный код... А общие модели типа CommonProduct сделать статическими хелперами. Но как-то неправильно это.
  • Yii. Как вы проектируете свои модели?

    @Zohei Автор вопроса
    @scherbanich а пример рабочий есть?) Как например прописать в defaultScopes правило, чтобы в админке выводились все записи, при этом на сайте показывались только опубликованные.
    Или например в beforeSave прокинуть разом для всех моделей админки сохранение истории правок, а для сайта кол-во просмотров)
    У меня нет решения как совместить оба похода, потому и спрашиваю. Может второй подход вообще не верен с точки зрения проектирования и я зря заморачиваюсь....
  • Yii. Как вы проектируете свои модели?

    @Zohei Автор вопроса
    Огромное кол-во правил валидации у бэкенд и фронтенд моделей.
    В админке, например, при создании товара Супер Админу выводится на выбор список городов и магазинов; Админу Города id города проставляется автоматически, показывается только список заведений; Менеджеру заведения уже id заведения должен проставиться автоматом и тд...
    Тоже самое касается связей (relations), методов поиска записей (типа search) и прочего прочего прочего...
    У других модулей другая логика, права и тд.
    Если все это пихать в одну модель, то боюсь код быстро станет не поддерживаемым даже самим разработчиком
  • Yii. Как вы проектируете свои модели?

    @Zohei Автор вопроса
    Можно. Но душит лень, когда один и тот же код требуется прописать десятку моделей)
  • Mysql - как оптимизировать связь Many To Many?

    @Zohei Автор вопроса
    А есть ли смысл в айдишнике (тот который `id` INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY) для связи один-ко-многим, к примеру, для связи пользователя со списком емейлов? Или все же есть ситуации, когда он может быть необходим?
  • Mysql - как оптимизировать связь Many To Many?

    @Zohei Автор вопроса
    Спасибо за ответы, вторая схема действительно оптимальней и работать с ней куда удобней.
  • Mysql - как оптимизировать связь Many To Many?

    @Zohei Автор вопроса
    примеры запросов:
    SELECT * from product_relation where product_id=N;
    SELECT * from product_relation where relation_id=N;