Yii2 Gii — генерирование кода

Yii2 Gii - генерирование кода

От автора: приветствую вас, друзья. Мы продолжаем цикл статей, посвященных знакомству с фреймворком Yii2. В этой статье мы познакомимся с интересным инструментом фреймворка Yii2 Gii. Данный инструмент предназначен для генерирования типового кода CRUD приложения. Начнем.

При создании любого приложения нам так или иначе приходится писать один и тот же код, который вполне можно охарактеризовать термином типовой код. Простой пример. На нашем сайте есть статьи и новости. Для их выборки и вывода на страницу по сути нужен одинаковый код, который будет отличаться лишь наименованием таблиц в БД и, возможно, полей в них. То же самое касается дальнейшего редактирования, добавления и удаления статей и новостей. Все это аналогичные операции, для которых потребуется типовой код.

Чтобы облегчить нам задачу, современные фреймворки предлагают нам инструменты для генерирования такого кода. Во фреймворке Yii2 таким инструментом является Gii. Это ничто иное, как модуль, который мы можем настроить в конфигурации фреймворка, конкретнее, в файле config\web.php:

Yii2 Gii - генерирование кода

В данной конфигурации устанавливается включение модуля Gii в режиме разработки. Давайте попробует открыть данный модуль. Для этого нам необходимо обратиться по следующему адресу: http://yii2/gii (если на сайте настроены ЧПУ) или же http://yii2/index.php?r=gii (если ЧПУ не настроены).

Фреймворк YII2. Быстрая разработка с современным PHP фреймворком

Узнай тонкости современной веб-разработки с помощью фреймворка YII2

Узнать подробнее

Yii2 Gii - генерирование кода

Итак, мы попали на страницу модуля. Как видим, здесь мы можем выполнять целый ряд операций: создать модель, контроллер и виды (приложение CRUD), можем генерировать формы, модули и расширения. Очень удобный инструмент, который поможет в считанные минуты сгенерировать типовое приложение.

Давайте испытаем его. У нас есть таблица статей post, давайте создадим CRUD приложение для работы с постами. Для начала я удалю из нашего приложения контроллер PostController, модель Post и папку видов post. Все это нам сгенерирует генератора кода. Для начала создадим модель в блоке Model Generator.

Здесь нам достаточно лишь начать вводить имя таблицы, с которой будет работать данная модель. Yii при начале ввода сразу же подскажет нам имя возможной таблицы. После этого кликаем по полю Model Class и фреймворк сам подставит нужное имя класса модели — Post.

Yii2 Gii - генерирование кода

Нам остается нажать кнопку Preview и на следующей странице нажать кнопку Generate.

Yii2 Gii - генерирование кода

После этого файл модели должен появиться в папке models вашего приложения. В нем вы найдете сгенерированный код модели. Теперь перейдем к генерированию CRUD приложения, выбрав в меню пункт CRUD Generator. Здесь мы укажем класс модели и контроллера, этого пока будет вполне достаточно.

Yii2 Gii - генерирование кода

После этого жмем кнопку Preview и на новой странице кнопку Generate.

Yii2 Gii - генерирование кода

В папке controllers у вас должен появиться файл контроллера PostController, а в папке представлений — папка post, в которой находятся сгенерированные виды. Теперь наше приложение для работы с постами будет располагать всем необходимыми функциями для работы CRUD приложения: создание, показ, редактирования и удаление постов. Конечно, все это, скорее всего, придется корректировать под ваши нужды, но тем не менее, благодаря генератору мы за считанные минуты получили рабочее типовое приложение.

На этом пока все. Больше о фреймворке вы можете узнать из наших бесплатных или платных уроков. Также создание простейшего блога на Yii2 можно посмотреть в этом цикле уроков.

Фреймворк YII2. Быстрая разработка с современным PHP фреймворком

Узнай тонкости современной веб-разработки с помощью фреймворка YII2

Узнать подробнее
Самые свежие новости IT и веб-разработки на нашем Telegram-канале

Фреймворк YII2: теория и первая практика

Овладейте азами фреймворка Yii2 за 5 дней!

Получить

Метки:

Похожие статьи:

Комментарии Вконтакте:

Комментарии Facebook:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Я не робот.

Spam Protection by WP-SpamFree