Главная
Блог разработчиков phpBB
 
+ 17 предустановленных модов
+ SEO-оптимизация форума
+ авторизация через соц. сети
+ защита от спама

Механическая генерация кода в Yii

Anna | 31.05.2014 | нет комментариев

Привет, %username%! Несколько лет назад я познакомился с восхитительным фреймворком Yii и с тех пор как только у меня возникает вероятность вести план на нем — я дерусь берусь за нее.

Одной из резких фич которую я дюже люблю, это инструмент Gii, тот, что начиная с версии 1.1.2 входит в состав фреймворка. Теперь я хочу побеседовать сторонних модулях основанных на нем.

Gii «Из коробки» генерирует довольно функциональный код, Зачастую когда необходимо сделать мелкую фичу доводится дюже немного менять. Но что если нам необходимо огромнее вероятностей? К примеру добавить поддержку нескольких языков, либо изменит жанр генерируемого кода?
Есть 2 метода растяжения: Изменять существующие образцы и создавать свои генераторы (ну либо применять теснее готовые соответственно). На базе этих вероятностей были сделаны довольно увлекательные продукты для удобной работы с авто генерацией кода.

Giix

Страница растяжения
Вероятно мой самый любимый генератор. Генерирует для моделей базовый класс с кодом и отдельно пустой класс модели с унаследованием от базового. Таким образом при изменении базы дозволено сделать пере-генерацию без затирания своего кода.

Также генерирует представление с учетом связей что дюже Зачастую экономит тонну времени.

Основные фичи
  • Усовершенствованная и упрощенная i18n
  • Помощь связей HAS_MANY и MANY_MANY.
  • Встроенная помощь для сохранения связей MANY_MANY при помощи нового способа GxActiveRecord::saveWithRelated.
  • Положительная обработка связанных признаков моделей, рендеринг соответствующих полей формы базируясь на типе связей.
  • Комфортная конструкция моделей для последующей работы

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

Manymanyajaxcrudadmin

Страница растяжения
Довольно крутая штука. Предоставляет образец для генерации кода с применением ajax в фронтенде для моделей со связками MANY_MANY. Комфортно когда необходимо сделать сущность к примеру «продукт» либо «категория».

К примеру для продукта мы используем обыкновенный CListView либо CGridView а для категорий можем применять nestedset, редактируемые при помощи плагина jstree.

Все это дело редактируется в модальных диалогах, с вероятностью прикреплять файлы.
Основывается на Giix.

Завершение

Моделей и комплектов образцов для генерации гораздо огромнее, я описал лишь те которые доводилось применять и которые мне подлинно нравятся.
Идея форка для Giix не покидает меня, есть подлинно отличные идеи по-поводу данного растяжения к примеру: добавить настройку типов полей перед генерацией, настройка правил, фильтров, допустимо это стоит оформить как новейший модуль для yii2. Время покажет.

Это моя первая статья, до этого я умел только троллить. За троллинг и оскорбления других пользователей, ранее, умоляю помилования. Советы и критику по написанию статьи умоляю писать в личку, с ошибками туда-же (мой Русский дрянен, я знаю, тружусь над этим).

Ссылки:
manymanyajaxcrudadmin
giix
Механическая генерация кода в Yii

Источник: programmingmaster.ru

Оставить комментарий
Форум phpBB, русская поддержка форума phpBB
Рейтинг@Mail.ru 2008 - 2017 © BB3x.ru - русская поддержка форума phpBB