Как использовать модели для backend и frontend модулей в Yii2 advanced?

Здравствуйте! Всё таки решил спросить знающих о правильной структуре Yii2 advanced на основе модулей. Как организовать правильно к примеру следующую ситуацию:
Имеется модуль Pages во фронтенде, соответственно для него нужна админка, тоже в виде модуля в бэкэнде, в каком месте хранить модели для этих модулей? common ? Тогда как то ломается структура самого понятия модуля... выходит разбросано. Да и вот CRUD создавать можно только там где эта модель лежит во фронте или бэкэнде, ругается на нэймспейс. Неужели только так?

Вот такой бред с CRUD - спрашивается почему он не дает размещать файлы в разных каталогах??? да и чего за проблема с Base Controller Class?
31745ed5856c4de0a6ac35ba3cf3ca5f.tiff
Не отображается картинка) - https://habrastorage.org/files/317/45e/d58/31745ed...
  • Вопрос задан
  • 2516 просмотров
Пригласить эксперта
Ответы на вопрос 3
@matperez
Какая конкретно ошибка возникает с неймспейсами и что вы при этом делаете?

Если вы может ссылаться на модели из неймспейса common\models, нет никаких ограничений, что бы ссылать на них же где-нибудь в frontend\modules\page\models.

В CRUD gii пытается генерировать наследников от основных моделей. От модели common\models\Product вполне можно наследовать какой-нибудь backend\models\ProductSearch и использовать его в админке для поиска.
Ответ написан
Комментировать
@ImPuuLsE Автор вопроса
выходит что большинство моделей будут общие для фронта и бэкэнда, смысл модульности теряется по мне...
Ответ написан
Комментировать
taurus2790
@taurus2790
Я не программер я только учусъ
Я сам начинающий, и может скажу глупость, поправьте если я не прав.

Смысл не теряется, если вы в бекенде ,во вронтенде и в комоне делаете одноимённые модуль, модели общие кладёте в /common/modules/page/model а те которые вам не нужны и во вронде и в бекенде ложите в нужную Вам область видимости, и кстати, то что у вас пишет ошибку при генерации CRUD, так тут страшного ничего нет, просто поправьте неймспейсы.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы