Оглавление

Начало Основы Работа с формами Работа с БД Кэширование Расширение Yii Тестирование Специальные темы
Зачем реклама?

Генерация кода при помощи консоли (устаревшее)

Примечание: Генераторы кода yiic shell считаются устаревшими, начиная с версии 1.1.2. Пожалуйста, используйте более мощные расширяемые веб-генераторы Gii.

Откроем консоль и выполним следующие команды:

% cd WebRoot/testdrive
% protected/yiic shell
Yii Interactive Tool v1.1
Please type 'help' for help. Type 'exit' to quit.
>> model User tbl_user
   generate models/User.php
   generate fixtures/tbl_user.php
   generate unit/UserTest.php

The following model classes are successfully generated:
    User

If you have a 'db' database connection, you can test these models now with:
    $model=User::model()->find();
    print_r($model);

>> crud User
   generate UserController.php
   generate UserTest.php
   mkdir D:/testdrive/protected/views/user
   generate create.php
   generate update.php
   generate index.php
   generate view.php
   generate admin.php
   generate _form.php
   generate _view.php

Crud 'user' has been successfully created. You may access it via:
http://hostname/path/to/index.php?r=user

В примере выше мы использовали команду shell утилиты yiic для взаимодействия с созданным каркасом приложения. В командной строке мы вводим две команды: model User tbl_user и crud User. Команда model автоматически создает класс модели User, основываясь на структуре таблицы tbl_user, а команда crud генерирует класс контроллера и файлы представлений, которые обеспечивают выполнение соответствующих операций CRUD.

Примечание: Даже если проверка соответствия требованиям показывает, что расширение PDO и драйвер PDO, соответствующий используемой базе данных, включены, могут возникать ошибки типа «…could not find driver». В этом случае необходимо запустить утилиту yiic следующим образом:

% php -c path/to/php.ini protected/yiic.php shell

где path/to/php.ini — путь до файла PHP ini

Давайте порадуемся нашим трудам, перейдя по следующему URL:

http://hostname/testdrive/index.php?r=user

Мы увидим страницу со списком пользователей из таблицы tbl_user. Поскольку наша таблица пустая, то записей в ней не будет. Кликнем по кнопке Create User и, если мы еще не авторизованы, отобразится страница авторизации. Затем загрузится форма добавления нового пользователя. Заполним её и нажмем кнопку Create. Если при заполнении формы были допущены ошибки, мы увидим аккуратное сообщение об ошибке.

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

http://hostname/testdrive/index.php?r=user/admin

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

Всё это не требует написания ни одной строчки кода!

Страница управления пользователями

Страница добавления нового пользователя


Зачем реклама?