Особенности Smart Scaffolding

October 15th, 2009 by 1datr
  • Классы полей данных: Не путать с типом полей данных. Никакой прямой связи между типом и классом поля нет. Поля одинакового типа могут иметь в одном и том же контроле разные классы. Класс поля данных - это способ внешнего представления поля данных а также операции и функционал обработки поля перед операциями с базой данных. Поле может быть подставляемым из списка значений, может быть датой, выбираемой из js-календря, каким-нибудь колорпикером и тп. Можно представить себе бесконечное количество вариантов работы отдельного поля. Именно с этой целью и создавался этот механизм. В пакете уже содержится ряд классов данных, таких как text(простое текстовое поле), textarea(поле memo), file(загрузка файлов на сервер и сохранения ссылок на них), lookup(подставляемое поле), dynlookup(подставляемое поля с возможностью удаления-добавления черех AJAX). Разработчик может написать свой класс поля данных, унаследовав его от класса df_base
  • Событийная модель: Она используется в классах данных и в самом скаффолдинге. У классов полей есть события OnUpdate, OnDelete, OnInsert, возникающие при обновлении, удалении и вставке соответственно. Это позволяет проводить обработку данных перед выполнением операций базы данных. В самом скаффолдинге предусмотрены события, возникающие перед рендеригом страниц редактирования, обзора, добавления и тп. Также предусмотренно событие перед рендерингом строки данных в обзоре.
  • Колнтитулы: позволяют добавить к основной функциональной части страницы куски своего html-кода сверху, снизу, слева и справа. Это очень удобно если надо сделать разного рода меню.

Возможные направления развития проекта

  • Создать helper/library, позволяющюю использовать механизм классов полей данных для публичных (дизайнерских) страниц сайтов.
  • Создать механизм валидации данных при добавлении/редактировании.
  • Возможность картинок в ссылках на удаление, редактирование и дополнительных ссылках.

О Smart Scaffolding

October 15th, 2009 by 1datr

Добро пожаловать на страницу блога Code-igniter-патча Smart Scaffolding. Этот патч помогает превратить CI-скаффолдинг в полноценное средство для создания админок и CRM. Напомню, что стандартный скаффолдинг code igniter появился в версии 1.6.1 и представлял собой нечто весьма убогое. Впоследствии появился сторонний патч Rembo Scaffolding, который тоже не слишком далеко ушел - появилась фильтрация и сортировка, но для создания админок его нельзя было использовать никак.

Smart Scaffolding (в дальнейшем SS) позволяет реально ускорить процесс создания Web-приложений или их частей, не предъявляющих серьезных требований к дизайну, в частности админки и корпоративные сайты crm. До публичных сайтов SS и его механизмы пока что не могут быть применимы, но в будущих версиях продукта этот недостаток возможно будет исправлен.

Последняя версия продукта - 2.3. Ее можно скачать здесь Smart Scaffolding 2.3