в yii есть сценарии, если вы о них...
Вывод полей формы в зависимости от прав разруливается автоматом при помощи сценариев и CFrom, довольно удобно.
В yii2 не знаю как, не смотрел даже, но вроде как валидация там другим путем пошла...
ммм.... нет) немного не то. Это то же нужно во все модели модуля прописать один и тот же метод. Вопрос в том как это сделать в одном месте сразу для всех моделей модуля...))
У меня была безумная мысль унаследовать AdminActiveRecord от CActiveRecord и прописать в нем defaultScopes... тогда все модели админки унаследованные от него подхватят нужный код... А общие модели типа CommonProduct сделать статическими хелперами. Но как-то неправильно это.
@scherbanich а пример рабочий есть?) Как например прописать в defaultScopes правило, чтобы в админке выводились все записи, при этом на сайте показывались только опубликованные.
Или например в beforeSave прокинуть разом для всех моделей админки сохранение истории правок, а для сайта кол-во просмотров)
У меня нет решения как совместить оба похода, потому и спрашиваю. Может второй подход вообще не верен с точки зрения проектирования и я зря заморачиваюсь....
Огромное кол-во правил валидации у бэкенд и фронтенд моделей.
В админке, например, при создании товара Супер Админу выводится на выбор список городов и магазинов; Админу Города id города проставляется автоматически, показывается только список заведений; Менеджеру заведения уже id заведения должен проставиться автоматом и тд...
Тоже самое касается связей (relations), методов поиска записей (типа search) и прочего прочего прочего...
У других модулей другая логика, права и тд.
Если все это пихать в одну модель, то боюсь код быстро станет не поддерживаемым даже самим разработчиком
А есть ли смысл в айдишнике (тот который `id` INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY) для связи один-ко-многим, к примеру, для связи пользователя со списком емейлов? Или все же есть ситуации, когда он может быть необходим?