Автоматически генерируемые классы (реализованы базовые описания на YAML) теперь прозрачно кешируются в обычном PHP. При модификации файла-описания кеш перегенерируется.
В связи с этим также вынесена, наконец, загрузка классов из простых функций в метод класса-загрузчика.
В идеале прозрачно генерируемые из описаний файлы ничем не будут отличаться от «настоящих». Сейчас поддерживается только один формат описаний, YAML. Альтернативные варианты реализуются легко, но пока не видно смысла. Пример описания:
code yaml
class: project_page
extends: bors_page
table_fields:
- title // Заголовок страницы
- text // Текст страницы
- category_id[project_categories] // Раздел сайта
- «Комментарии полей» — это title для автоматической админки.
- category_id[project_categories] — dropdown из вариантов списка project_categories
Типы полей пока задать нельзя, только автоопределение. Нужно придумать формат описания. Например, как:
- text(bbcode) // Текст …