Рубрики
Uncategorized

Способ практики Yii – Генератор кода Gii

Автор оригинала: David Wong.

Набросок

Gii-это мощный генератор кода, в основном используемый для генерации фонового кода.

Начать Gii

Gii-это модуль в Yii. Его можно включить, настроив свойство приложения yii base Application:: modules. Обычно в файле config/web. php содержатся следующие коды конфигурации:

$config = [ ... ]; 
if (YII_ENV_DEV) { 
    $config['bootstrap'][] = 'gii'; 
    $config['modules']['gii'] = 'yii\gii\Module'; 
}

Эта конфигурация показывает, что если текущая среда разработки-это приложение, которое будет содержать модули GII, класс модуля-это yiigiModule.

Если вы проверите сценарий ввода приложения web/index.php, вы увидите, что эта строка кода устанавливает значение YII_ENV_DEV равным true:

defined('YII_ENV') or define('YII_ENV', 'dev');

Учитывая определение этой строки кода, приложение находится в режиме разработки, и модули Gii открываются в соответствии с приведенной выше конфигурацией. Вы можете получить доступ к Gii непосредственно через URL-адрес:

http://hostname/index.php?r=gii

Плюс: Если вы получите доступ к Gii с компьютера, отличного от вашего собственного, запрос будет отклонен по соображениям безопасности. Вы можете настроить Gii для добавления IP-адресов, разрешающих доступ к нему:

'gii' => [
    'class' => 'yii\gii\Module',
    'allowed IPs'=> ['127.0.0.1',': 1','192.168.0. *','192.168.178.20']// Adjust here as needed
],

Чтобы перезаписать существующий файл, установите флажок в разделе “перезапись” и нажмите “Генератор”. Если это новый файл, просто нажмите “Генератор”.

Далее вы увидите страницу описания, содержащую сгенерированные файлы. Если файл был перезаписан в процессе создания, также появляется сообщение о том, что код восстановлен и перезаписан.

Создание кода CRUD

CRUD означает операции добавления, проверки, изменения и удаления, которые обычно используются для обработки данных на большинстве веб-сайтов.

Выберите “Генератор CRUD” в Gii (нажмите на ссылку на домашней странице Gii), чтобы создать функцию CRUD. Например:

  • Класс модели: страна моделей приложений

  • Класс модели поиска: поиск моделей приложений по странам

  • Класс контроллера: контроллеры приложений CountryController

Затем нажмите кнопку “Предварительный просмотр”. Вы увидите следующий список файлов, которые необходимо сгенерировать.

Если вы ранее создали контроллеры/CountryController. PHP и просмотры/страна/индекс. Файлы PHP, перезапишите их, установив флажок в разделе “перезаписать” (предыдущие файлы не поддерживали CRUD все).

тестовый запуск

Используйте браузер для доступа к следующему URL-адресу, чтобы увидеть, как работает сгенерированный код:

http://hostname/index.php?r=country/index

Вы можете увидеть таблицу, показывающую данные по странам, считанные из таблицы данных. Поддерживает сортировку данных в заголовках столбцов и фильтрацию по условиям фильтрации ввода.

Ниже приведен список файлов, созданных Gii, чтобы вы могли изучить функции и реализации или изменить их:

  • Контроллер: Контроллеры/CountryController. PHP

  • Модели: models/Country.php и models/CountrySearch.php

  • Просмотр: просмотры/страна/*.php

  • Дополнение: Gii разработан как высоко настраиваемый и расширяемый инструмент генерации кода. Это может значительно повысить скорость разработки приложений.

Генерация кода с использованием Gii

1. Gii-это инструмент генерации кода, основанный на веб-интерфейсе.

2. Когда генератор моделей создает код класса модели, он обращает внимание на подтверждение имени таблицы, класса модели и пространства имен.

3. Когда генератор ТВОРОГА генерирует код, обратите внимание на путь вызываемого каталога модуля, путь модели и поиска, а также другие пути к классам (Контроллер и представление), чтобы избежать проблемы ошибок пути.