Как стать автором
Обновить

Комментарии 5

А можно перестать баловаться, и просто написать 1 общую админку с шаблонами полей.
Благо делается не сложно.
А если ещё подумать, то можно сделать нормальное описание полей в моделях, и собирать админку от полей модели и связных с минимальными корректировка и.

А если подумать чуть больше то можно нагуглить готовое решение.

Видимо, я слишком сильно упростил пример. Речь не идет о стандартной CMS, для которой нужна одна админка с набором полей. Речь идет о проекте, когда пишется полноценный кастомный бэк, со сложной моделью данных и бизнес логикой.
Например, в одном из моих гейм-дев проектов есть такая структура: основная сущность — квест, он состоит из этапов. Этапы состоят из сообщений. Сообщения могут содержать мини игру. Мини игры могут быть разных типов, один из них — викторины, которые содержат список вопросов. А к каждому вопросу есть список вариантов ответов с одним правильным.


Если вы можете привести ссылку на готовое решение для такой возможности, буду благодарен.

Я вас прекрасно понял, но кастомные схемы тоже не проблема, отзыв выше немного эмоционален получился, но ровно потому, как мы с командой проходили весь этот путь написания своей системы поверх Yii и как показала наша практика, использование коло генерации через Gii не самое лучшее решение.
Наиболее удобным вариантом получилось завернуть таблицы страниц админки в класс админки с конфигурацией полей.
И классы форм редактирования и создания.
Расскажете подробнее? Просто я видел (и реализовывал) паттерны с конфигурируемыми полями, но пока не могу понять, как за счет таких полей выстроить реляционные отношения в несколько уровней.
И второй вопрос — почему вы говорите только об админке, на чем вы пишите фронт?
Если говорить о других примерах вложенности, где можно использовать CRUD-виджеты, могу привести из другого моего проекта: пользователь имеет список записей в балансе, каждая запись имеет список счетов, каждый счет имеет список исторических значений (по одному на каждый месяц) и связи на транзакции (дебет/кредит).
Здесь полностью приложение написано на Yii. Админка, конечно, есть, но она скорее утилитарная — справочники настроить, какие-то общие параметры и т.п. Соль как раз в интерфейсах для конечных пользователей для отображения и управления такими вложенными сущностями.
Принципиальной разницы нет админка\клиентка, просто изначально мы реализовали это для админ части, поэтому так и пишу.

Если смогу расковырять старый код, чтобы немного анонимизировать, подкину вам.
Прям вот сейчас увы работа.
Скрин как мы накидали динамику вам ЛС отправлю.

Основную идею можно подсмотреть в github.com/phact-cmf/phact
К сожалению оригинальная разработка недоступна, а это калька с оригинальной идеи.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации