index php r gii

Генерация кода при помощи Gii

index php r gii. Смотреть фото index php r gii. Смотреть картинку index php r gii. Картинка про index php r gii. Фото index php r gii

Генерация кода при помощи Gii

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

В этом руководстве вы узнаете:

Запускаем Gii

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

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

index php r gii. Смотреть фото index php r gii. Смотреть картинку index php r gii. Картинка про index php r gii. Фото index php r gii

Генерация класса Active Record

Чтобы использовать Gii для генерации класса Active Record, выберите «Генератор модели» (нажав на ссылку на главной странице Gii). И заполните форму следующим образом:

index php r gii. Смотреть фото index php r gii. Смотреть картинку index php r gii. Картинка про index php r gii. Фото index php r gii

Затем нажмите на кнопку «Предварительный просмотр». Вы увидите, что models/Country.php перечислен в результатах создаваемых файлов классов. Вы можете нажать на имя файла класса для просмотра его содержимого.

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

index php r gii. Смотреть фото index php r gii. Смотреть картинку index php r gii. Картинка про index php r gii. Фото index php r gii

Для перезаписи существующего файла установите флажок рядом с «overwrite» и нажмите кнопку «Generate». Для создания нового файла вы можете просто нажать «Generate».

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

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

CRUD расшифровывается как Create, Read, Update и Delete, предоставляющий четыре основные функции, выполняемые над данными на большинстве веб-сайтов. Чтобы создать функциональность CRUD используя Gii, выберите «CRUD Генератор» (нажав на ссылку на главной странице Gii). Для нашей таблицы «country» заполните полученную форму следующим образом:

index php r gii. Смотреть фото index php r gii. Смотреть картинку index php r gii. Картинка про index php r gii. Фото index php r gii

Затем нажмите на кнопку «Preview». Вы увидите список файлов, которые будут созданы, как показано ниже.

index php r gii. Смотреть фото index php r gii. Смотреть картинку index php r gii. Картинка про index php r gii. Фото index php r gii

Если вы уже создали файлы controllers/CountryController.php и views/country/index.php (в разделе о базах данных), установите флажок «overwrite», чтобы заменить их. (Предыдущие версии не поддерживают CRUD полностью)

Испытываем в действии

Чтобы увидеть как всё это работает, перейдите по следующему URL, используя ваш браузер:

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

Для каждой отображающейся в таблице страны вы можете просмотреть подробную информацию, обновить или удалить её. Вы также можете нажать на кнопку «Создать страну» в верхней части таблицы для получения формы создания новой страны.

index php r gii. Смотреть фото index php r gii. Смотреть картинку index php r gii. Картинка про index php r gii. Фото index php r gii

index php r gii. Смотреть фото index php r gii. Смотреть картинку index php r gii. Картинка про index php r gii. Фото index php r gii

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

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

Заключение

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

Источник

Index php r gii

Генерация кода при помощи Gii

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

В этом руководстве вы узнаете:

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

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

index php r gii. Смотреть фото index php r gii. Смотреть картинку index php r gii. Картинка про index php r gii. Фото index php r gii

Генерация класса Active Record

Чтобы использовать Gii для генерации класса Active Record, выберите «Генератор модели» (нажав на ссылку на главной странице Gii). И заполните форму следующим образом:

index php r gii. Смотреть фото index php r gii. Смотреть картинку index php r gii. Картинка про index php r gii. Фото index php r gii

Затем нажмите на кнопку «Предварительный просмотр». Вы увидите, что models/Country.php перечислен в результатах создаваемых файлов классов. Вы можете нажать на имя файла класса для просмотра его содержимого.

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

index php r gii. Смотреть фото index php r gii. Смотреть картинку index php r gii. Картинка про index php r gii. Фото index php r gii

Для перезаписи существующего файла установите флажок рядом с «overwrite» и нажмите кнопку «Generate». Для создания нового файла вы можете просто нажать «Generate».

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

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

CRUD расшифровывается как Create, Read, Update и Delete, предоставляющий четыре основные функции, выполняемые над данными на большинстве веб-сайтов. Чтобы создать функциональность CRUD используя Gii, выберите «CRUD Генератор» (нажав на ссылку на главной странице Gii). Для нашей таблицы «country» заполните полученную форму следующим образом:

index php r gii. Смотреть фото index php r gii. Смотреть картинку index php r gii. Картинка про index php r gii. Фото index php r gii

Затем нажмите на кнопку «Preview». Вы увидите список файлов, которые будут созданы, как показано ниже.

index php r gii. Смотреть фото index php r gii. Смотреть картинку index php r gii. Картинка про index php r gii. Фото index php r gii

Если вы уже создали файлы controllers/CountryController.php и views/country/index.php (в разделе о базах данных), установите флажок «overwrite», чтобы заменить их. (Предыдущие версии не поддерживают CRUD полностью)

Испытываем в действии

Чтобы увидеть как всё это работает, перейдите по следующему URL, используя ваш браузер:

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

Для каждой отображающейся в таблице страны вы можете просмотреть подробную информацию, обновить или удалить её. Вы также можете нажать на кнопку «Создать страну» в верхней части таблицы для получения формы создания новой страны.

index php r gii. Смотреть фото index php r gii. Смотреть картинку index php r gii. Картинка про index php r gii. Фото index php r gii

index php r gii. Смотреть фото index php r gii. Смотреть картинку index php r gii. Картинка про index php r gii. Фото index php r gii

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

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

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

Источник

Автоматическая генерация кода

1. Использование Gii ¶

Gii является модулем и должен быть использован в составе существующего приложения Yii. Для использования Gii необходимо отредактировать файл конфигурации приложения следующим образом:

Выше мы объявили модуль с именем gii и классом GiiModule. Также мы задали пароль, который будет использоваться для доступа к Gii.

По умолчанию, в целях безопасности, Gii доступен только для localhost. Если необходимо дать доступ к нему с других компьютеров, нужно задать свойство GiiModule::ipFilters как показано в коде выше.

Так как Gii будет генерировать и сохранять новые файлы с кодом в существующее приложение, необходимо убедиться в том, что процесс веб-сервера имеет на это права. Показанные выше свойства GiiModule::newFileMode и GiiModule::newDirMode содержат права, с которыми будут создаваться файлы и директории.

Примечание: Gii является инструментом разработчика. Поэтому он должен быть установлен исключительно на компьютере или сервере разработчика. Так как он может генерировать новые скрипты PHP, необходимо уделить особое внимание безопасности (пароль, IP фильтры).

В составе Gii есть готовый набор генераторов кода. Каждый генератор отвечает за свой тип кода. К примеру, генератор контроллера создаёт класс контроллера вместе с несколькими шаблонами отображения; генератор модели создаёт класс ActiveRecord для определённой таблицы БД.

Последовательность работы с генератором следующая:

Примечание: после генерации модели стоит проверить и скорректировать метод rules так как структура базы данных часто не содержит достаточно данных о требованиях валидации.

2. Расширение Gii ¶

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

Gii можно расширять двумя способами: изменяя существующие шаблоны кодогенераторов и создавая свои генераторы.

Структура кодогенератора

Генератор кода размещается в директории, чьё имя является именем генератора. Директория обычно содержит:

Путь поиска генераторов

Gii ищет генераторы в списке директорий, указанных в свойстве GiiModule::generatorPaths. В том случае, если необходимо добавить свои генераторы, следует настроить приложение следующим образом:

Возможно иметь несколько одноимённых генераторов, если у них разные пути поиска. В этом случае будет использоваться генератор, путь поиска которого указан выше в GiiModule::generatorPaths.

Изменение шаблонов кода

Изменение шаблонов кода — самый простой и самый распространённый путь расширения Gii. Мы будем использовать примеры для того, чтобы описать, как изменить шаблоны кода. Допустим, нам необходимо изменить код, создаваемый генератором модели.

Создание новых генераторов

В этом подразделе мы покажем, как реализовать новый генератор, который сможет создавать новые классы виджетов.

Реализация WidgetGenerator.php

Файл WidgetGenerator.php предельно простой. Он содержит лишь следующий код:

Реализация WidgetCode.php

Класс WidgetCode наследуется от CCodeModel. Как и в обычном классе модели, в данном классе мы реализуем методы rules() и attributeLabels() для валидации ввода и генерации подписей полей соответственно. Стоит отметить, что так как базовый класс CCodeModel уже описывает некоторое количество правил валидации и названий подписей, то мы должны объединить их с нашими правилами и подписями.

Реализация views/index.php

После реализации контроллера ( WidgetGenerator ) и модели ( WidgetCode ) самое время заняться отображением views/index.php :

При создании формы мы можем использовать две замечательные возможности CCodeForm. Одна — подсказки для полей. Вторая — запоминание введённых значений.

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

Для того, чтобы сделать поле запоминаемым, необходимо сделать две вещи.

Во-первых, нужно описать правило валидации sticky для соответствующего атрибута модели. К примеру, для стандартного генератора контроллера используется приведённое ниже правило для запоминания атрибутов baseClass и actions :

Во-вторых, в отображении необходимо добавить CSS класс sticky контейнеру div поля ввода:

Источник

Генерация кода при помощи Gii

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

В этом руководстве вы узнаете:

Запускаем Gii #

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

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

index php r gii. Смотреть фото index php r gii. Смотреть картинку index php r gii. Картинка про index php r gii. Фото index php r gii

Генерация класса Active Record #

Чтобы использовать Gii для генерации класса Active Record, выберите «Генератор модели» (нажав на ссылку на главной странице Gii). И заполните форму следующим образом:

index php r gii. Смотреть фото index php r gii. Смотреть картинку index php r gii. Картинка про index php r gii. Фото index php r gii

Затем нажмите на кнопку «Предварительный просмотр». Вы увидите, что models/Country.php перечислен в результатах создаваемых файлов классов. Вы можете нажать на имя файла класса для просмотра его содержимого.

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

index php r gii. Смотреть фото index php r gii. Смотреть картинку index php r gii. Картинка про index php r gii. Фото index php r gii

Для перезаписи существующего файла установите флажок рядом с «overwrite» и нажмите кнопку «Generate». Для создания нового файла вы можете просто нажать «Generate».

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

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

CRUD расшифровывается как Create, Read, Update и Delete, предоставляющий четыре основные функции, выполняемые над данными на большинстве веб-сайтов. Чтобы создать функциональность CRUD используя Gii, выберите «CRUD Генератор» (нажав на ссылку на главной странице Gii). Для нашей таблицы «country» заполните полученную форму следующим образом:

index php r gii. Смотреть фото index php r gii. Смотреть картинку index php r gii. Картинка про index php r gii. Фото index php r gii

Затем нажмите на кнопку «Preview». Вы увидите список файлов, которые будут созданы, как показано ниже.

index php r gii. Смотреть фото index php r gii. Смотреть картинку index php r gii. Картинка про index php r gii. Фото index php r gii

Если вы уже создали файлы controllers/CountryController.php и views/country/index.php (в разделе о базах данных), установите флажок «overwrite», чтобы заменить их. (Предыдущие версии не поддерживают CRUD полностью)

Испытываем в действии #

Чтобы увидеть как всё это работает, перейдите по следующему URL, используя ваш браузер:

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

Для каждой отображающейся в таблице страны вы можете просмотреть подробную информацию, обновить или удалить её. Вы также можете нажать на кнопку «Создать страну» в верхней части таблицы для получения формы создания новой страны.

index php r gii. Смотреть фото index php r gii. Смотреть картинку index php r gii. Картинка про index php r gii. Фото index php r gii

index php r gii. Смотреть фото index php r gii. Смотреть картинку index php r gii. Картинка про index php r gii. Фото index php r gii

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

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

Заключение #

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

Источник

Генерация кода при помощи Gii ¶

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

В этом руководстве вы узнаете:

Запускаем Gii ¶

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

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

index php r gii. Смотреть фото index php r gii. Смотреть картинку index php r gii. Картинка про index php r gii. Фото index php r gii

Генерация класса Active Record ¶

Чтобы использовать Gii для генерации класса Active Record, выберите «Генератор модели» (нажав на ссылку на главной странице Gii). И заполните форму следующим образом:

index php r gii. Смотреть фото index php r gii. Смотреть картинку index php r gii. Картинка про index php r gii. Фото index php r gii

Затем нажмите на кнопку «Предварительный просмотр». Вы увидите, что models/Country.php перечислен в результатах создаваемых файлов классов. Вы можете нажать на имя файла класса для просмотра его содержимого.

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

index php r gii. Смотреть фото index php r gii. Смотреть картинку index php r gii. Картинка про index php r gii. Фото index php r gii

Для перезаписи существующего файла установите флажок рядом с «overwrite» и нажмите кнопку «Generate». Для создания нового файла вы можете просто нажать «Generate».

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

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

CRUD расшифровывается как Create, Read, Update и Delete, предоставляющий четыре основные функции, выполняемые над данными на большинстве веб-сайтов. Чтобы создать функциональность CRUD используя Gii, выберите «CRUD Генератор» (нажав на ссылку на главной странице Gii). Для нашей таблицы «country» заполните полученную форму следующим образом:

index php r gii. Смотреть фото index php r gii. Смотреть картинку index php r gii. Картинка про index php r gii. Фото index php r gii

Затем нажмите на кнопку «Preview». Вы увидите список файлов, которые будут созданы, как показано ниже.

index php r gii. Смотреть фото index php r gii. Смотреть картинку index php r gii. Картинка про index php r gii. Фото index php r gii

Если вы уже создали файлы controllers/CountryController.php и views/country/index.php (в разделе о базах данных), установите флажок «overwrite», чтобы заменить их. (Предыдущие версии не поддерживают CRUD полностью)

Испытываем в действии ¶

Чтобы увидеть как всё это работает, перейдите по следующему URL, используя ваш браузер:

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

Для каждой отображающейся в таблице страны вы можете просмотреть подробную информацию, обновить или удалить её. Вы также можете нажать на кнопку «Создать страну» в верхней части таблицы для получения формы создания новой страны.

index php r gii. Смотреть фото index php r gii. Смотреть картинку index php r gii. Картинка про index php r gii. Фото index php r gii

index php r gii. Смотреть фото index php r gii. Смотреть картинку index php r gii. Картинка про index php r gii. Фото index php r gii

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

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

Заключение ¶

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

Источник

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

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