У меня есть две таблицы в моей базе данных, которые необходимы для отображения таблицы данных на основе сетки. В настоящее время код, который я только отображает информацию для одной таблицы (код ниже)Отображение информации из двух таблиц в одном виде сетки
<?php $this->widget('zii.widgets.grid.CGridView', array(
'id'=>'aux-room-grid',
'dataProvider'=>$model->search(),
'filter'=>$model,
'columns'=>array(
'room',
'capacity',
array(
'class'=>'CButtonColumn',
),
),
)); ?>
Я так как у меня способности я также хотел бы получить загруженность, в зависимости от того, сколько строк есть связаны с номером комнаты, которая находится в моей второй таблице. Я знаю, что без использования PHP это может показаться довольно простым, но я новичок в Yii и не понимаю, как я могу рассчитывать на другую модель. Чтобы найти занятие, мне нужно будет использовать номер #, который является первым столбцом таблицы 1.
Проще говоря: Мне нужно подсчитать строки, связанные с номером комнаты из первого столбца. Мне нужно отобразить исходные таблицы содержимого комнаты и емкости, но с занятостью между этими двумя столбцами. Как мне это сделать с помощью Yii?
SQL для двух таблиц:
CREATE TABLE IF NOT EXISTS `cs_people`.`aux_room` (
`room` VARCHAR(20) NOT NULL ,
`capacity` VARCHAR(20) NULL ,
PRIMARY KEY (`room`))
ENGINE = InnoDB;
CREATE TABLE IF NOT EXISTS `cs_people`.`room_desk` (
`userid` VARCHAR(8) NOT NULL ,
`room` VARCHAR(20) NULL ,
`desk` VARCHAR(250) NULL ,
PRIMARY KEY (`userid`) ,
INDEX `room_desk.room_idx` (`room` ASC) ,
CONSTRAINT `room_desk.userid`
FOREIGN KEY (`userid`)
REFERENCES `cs_people`.`people` (`userid`)
ON DELETE CASCADE
ON UPDATE CASCADE,
CONSTRAINT `room_desk.room`
FOREIGN KEY (`room`)
REFERENCES `cs_people`.`aux_room` (`room`)
ON DELETE CASCADE
ON UPDATE CASCADE)
ENGINE = InnoDB;
Вы прочитали это http://www.yiiframework.com/doc/guide/1.1/en/database.arr#statistical-query? – soju