【发布时间】:2014-08-20 22:13:28
【问题描述】:
我正在尝试使用关系作为创建CActiveDataProvider 的标准的一部分。我有以下内容:
用户模型:
return array(
'favourites'=>array(self::HAS_MANY, 'UserFavourite', 'user_id', 'order'=>'added_at DESC'),
);
用户最喜欢的型号:
return array(
'user'=>array(self::BELONGS_TO, 'User', 'user_id'),
'listing'=>array(self::BELONGS_TO, 'Listing', 'listing_id'),
);
控制器(查看收藏夹动作):
$user = $this->loadUser(Yii::app()->user->id);
如何在我的用户模型中创建一个CActiveDataProvider,以获取当前用户的所有favourites - 以及每个收藏夹的相关listing 模型数据?所以我想做$favourites = $user->getFavourites();之类的事情。
CActiveDataProvider 应该返回一个由Listing 对象组成的数组。它应该支持分页和排序——默认排序是added_at DESC。
我曾尝试使用CDbCriteria 的with 选项,但这似乎不起作用...
【问题讨论】:
标签: php activerecord yii