Создание модели
Primary tabs
В отличии от базового примера я буду создавать модель на базе CActiveRecord - это будет модель сообщения - так как я хочу
дополнить ранее сгенерированное приложение функционалом гостевой книги
Сгенерируем модель Message (сообщение гостевой книги) с помощью Gii как мы раньше создали модель User
И отследим - какие именно файлы создаются и изменим их "под себя" - ну и вообще - поймём как что следует писать вбудущем чтобы сделать то-то и то-то
Но для начал было бы неплохо определиться с полями таблицы, которые будут хранить данные.
Относительно сообщения нам интересно следующие:
- что именно написали (текст)
- кто его написал
- когда
для отражения этой информации будем использовать три поля (+1 для номера сообщения):
- id (=порядковый номер сообщения)
- user_id (=внешний ключ и таблицы пользователей - отсюда мы сможем узнать кто именно написал сообщение)
- text = текст сообщения
- date = дата публикации (/последнего обновления)
приведу рядом команды разворачивания обеих таблиц - первая - эта та, которая использовалась нами в автоматически сгенерированном коде,а вторую я создаю , чтобы хранить данные о сообщениях гостевой книги:
CREATE TABLE tbl_user ( id INTEGER NOT NULL PRIMARY KEY AUTO_INCREMENT, username VARCHAR(128) NOT NULL, password VARCHAR(128) NOT NULL, email VARCHAR(128) NOT NULL ); CREATE TABLE `message` ( id INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY, user_id INTEGER, date TIMESTAMP, FOREIGN KEY (user_id) REFERENCES tbl_user(id) );
Сначала генерируем модель
создаётся файл по адресу =
models\Message3.php
затем передим в раздел Crud Generator и генерируем код указав в качестве базы нашу созданную ранее модель - и смотрим что создалось
А создался целый набор файлов:
controllers\Message3Controller.php new views\message3\_form.php new views\message3\_search.php new views\message3\_view.php new views\message3\admin.php new views\message3\create.php new views\message3\index.php new views\message3\update.php new views\message3\view.php
то есть созданы - контроллер и папка содержащая скрипты представления.
- Log in to post comments
- 6204 reads