Ссылки на объекты и списки объектов проще, чем вам кажется!

Этот пример демонстрирует насколько просто работать со связанными структурами в DVelum.

Рассмотрим простую задачу: есть сущность «Статья», у нее есть свойство «Главная категория» и список связанных статей.

Начнем с объектов ORM.

Объект Category: title varchar 255.

Не забываем указать поле, используемое как заголовок ссылки (title).

Объект Article:

  • title varchar 255, required
  • code varchar 255, required unique (url-код статьи, уникальный)
  • text long text, allow html
  • category_id link Category , required
  • related_articles object list link (чтобы появилась возможность ссылаться самому на себя, необходимо сохранить объект и открыть для редактирования).

Не забываем указать поле, используемое как заголовок ссылки (title).

Более подробно про поле code:

Генерируем интерфейсы для обоих объектов:

Теперь можно приступать к заполнению.

Зайдем в интерфейс Category и добавим несколько записей:

Далее перейдем к статьям. Имеется следующий интерфейс редактирования (поддерживает версионный контроль):

Можно заметить, что для выбора категории генератор вставил специальный компонент.

Создадим несколько статей:

Первая колонка отображает статус публикации, вторая - версии (опубликованная / последняя).

Теперь имея несколько статей в базе мы можем назначать связанные (генератор так же позаботился о редакторе).

Используя версионную панель мы можем возвращаться и публиковать более старые версии документов.

Остальное можно настроить по вкусу.

Что может быть проще?