Чек-лист создания формы Master-Detail в Backend OctoberCMS
October CMS поддерживает декларативный способ задания формы Master-Detail.
- В Master модели должна быть связь
belongs
илиhas
. - В Detail модели надо указать
fillable
атрибуты для заполнения. - В Master контроллере массиву
$implement
добавить поведениеBackend.Behaviors.RelationController
. - В Master контроллере добавить конфиг
$relationConfig
, описывающий поведение отношения.... public $relationConfig = 'config_relation.yaml';
Пример конфига:
publications: label: Публикации view: list: $/bree7e/cris/models/publication/columns.yaml toolbarButtons: create|add|remove manage: form: $/bree7e/cris/models/publication/fields_simple.yaml showSearch: true recordsPerPage: 10
- Создать
columns.yaml
для Detail модели по аналогии сfields.yaml
. - Создать
partial
отрисвощик формы "Mater/Detail".
Например_publications.htm
:<?= $this->relationRender('publications') ?>
- Создать поле для отрисовщика в конфиге
fields.yaml
Master модели с типовpartial
и именем из шага (6) без символа подчёркивания.publications: span: full type: partial tab: Публикации
Видео от Watch-Learn