使用CGridView进行模型关联
|
我有一个具有has_many关联的模型。
假设学生有很多课程。
我想显示使用CGridView的特定学生的所有课程。
像这样:
$this->widget(\'zii.widgets.grid.CGridView\', array(
\'dataProvider\' => $model->courses,
\'columns\'=>array(
\'name\',
),
));
还尝试了“ 1”作为dataProvider,但仍然无法正常工作。
是否有捷径可寻?还是我必须在课程模型上创建搜索条件,并手动从学生模型中获取一些条件?
没有找到相关结果
已邀请:
2 个回复
茬贺努充尽
缮记箔
而不是
仍然无法正常工作的原因是Yii的AR关系返回的是对象数组,而不是实际的DataProvider对象 无论如何,我似乎还记得为此感到挣扎。我从来没有真正让它像我想要的那样工作。我最近得到的是在我的dataProvider中设置\'data \'变量,但是分页在ListView中被破坏了。它的工作原理如下:
我最终要做的是创建新标准,以传递给与关系相同的数据提供者。像这样:
我假设您正在将MANY_MANY关系与联接表一起使用。我希望这会有所帮助,即使我确定这不是您要执行的操作。如果有人有更好的解决方案,请分享!我也想了解它! :)