Генератор программного кода Gii в Yii

В прошлой статье "Взаимодействие с базой данных в Yii" был разобран пример вывода списка из базы данных. Для этого в базе была создана таблица "animals" с полями "name" и "food". Таблица была заполнена примерами данных (названиями животных и их любимой едой).

Для организации вывода данных таблицы выл написан код контроллера controllers/AnimalsController.php с действием "actionList", представление views/animals/list.php и модель models/Animals.php.

Все было запрограммировано в ручном режиме. Но в Yii есть модуль Gii, который позволяет генерировать подобный код автоматически, что облегчает жизнь разработчикам. В этой статье попробуем сделать все действия из предыдущей, только с использованием Gii.

Активация Gii

Сначала необходимо убедиться, что модуль Gii активен. Для этого он должен быть перечислен в файле конфигурации config/web.php так:
$config = [ ... ];

if (YII_ENV_DEV) { // если приложение в режиме разработки
    $config['bootstrap'][] = 'gii';
    $config['modules']['gii'] = [
        'class' => 'yii\gii\Module',
        'allowedIPs' => ['ваш_ip_адрес'],
    ];
}
Вставьте вместо "ваш_ip_адрес" свой внешний ip (его можно узнать через поисковик). Это нужно, потому что Gii позволяет получить прямой доступ к базе. Поэтому если посторонний получит доступ к системе управления Gii, то сможет навредить проекту.

Если открыть файл /index.php в корневой веб папке, то там будет строка, указывающая на то, что приложение находится в разработке:
defined('YII_ENV') or define('YII_ENV', 'dev');
Если это строка присутствует, то остаётся только перейти на страницу управления модулем Gii. Находится эта страница по адресу /index.php?r=gii. Страница управления модулем Gii в фреймворке Yii

Создание модели Gii

На странице управления Gii кликните на кнопку "Start" в разделе создания модели. Затем введите название и кликните "Preview" внизу формы: Страница создение модли модулем Gii в фреймворке Yii Система проверит существует ли данная модель, и нет ли других проблем. В нашем случае модель "Animals" уже создана, поэтому необходимо поставить флаг перезаписи в списке под кнопкой "Preview". А затем нажать на нопку "Generate", чтобы перезаписать модель. Страница создения модeли модулем Gii в фреймворке Yii

Создание представления и контроллера

Теперь можно перейти на второй пункт "CRUD Generator". Эта аббревиатура расшифровывается как "Create", "Read", "Update" и "Delete". С помощью этой формы можно сгенерировать контроллер и представления, в функции которых будут входить элементы управления, чтобы можно было читать, изменять, удалять и добавлять новые элементы в таблицу из публичного раздела сайта. CRUD Generator модуля Gii в фреймворке Yii В этой форме необходимо заполнить первые три поля такими данными для нашего примера:
  • Model Class: app\models\Animals
  • Search Model Class: app\models\AnimalsSearch
  • Controller Class: app\controllers\AnimalsController
Затем необходимо нажать на кнопу "Preview", отметить все действия в появившемся списке под кнопкой для выполнения и кликнуть "Generate".

Создание представления и контроллера

Остаётся только протестировать результат на странице /index.php?r=animals/index: Страница, созданная с помощью модуля Gii в фреймворке Yii Как можно заметить, тут есть и функции редактирования, поиска и сортировки элементов таблицы. Если вас не устраивает визуальное представление или другие функции, то их код всегда можно отредактировать вручную, через файлы.
MouseDC.ru - хостинг, виртуальный хостинг, покупка доменов, проверка доменов, WHOIS, курсы создания сайтов, вебинары по созданию, курсы разработки сайтов, доработка сайтов, сопровождение сайтов, разработка сайтов, техподдержка сайтов
Cмотрите другие статьи:
Была ли статья полезной?
Была ли эта статья полезна? Есть вопрос?
хостинг для сайтов
Закажите недорогой хостинг Заказать

всего от 290 руб

⇡ наверх