我不需要从相关模型中获取数据。我有模特帖子我也有模特评论。
每个帖子都有评论。我在模型之间建立关联,所以:
class Post
public function relations()
{
return array(
'comments' => array(self::HAS_MANY, 'Comment', 'post_id')
);
}
public function scopes()
{
return array(
'orderDesc'=>array(
'order' => 'post_id DESC',
),
);
}
public function findAllPosts()
{
return $this->orderDesc()->findAll();
}
如果我从 db 收到帖子,我需要评论 - 没问题。
Post::model()->findByPk()
但如果我得到所有帖子 - 我不需要评论
Post::model()->findAllPosts()
但我收到带有评论的帖子。我认为 - 这对数据库不利 - 使用额外的连接,我很感兴趣如何禁用从相关模型获取数据。
我尝试通过场景来改变方法关系中的行为,但在方法关系中我总是 - $this->scenario 是空的。