加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 在yii2中使用多个表的连接

发布时间:2020-12-13 22:11:03 所属栏目:PHP教程 来源:网络整理
导读:我正在使用yii2,我有3个表:帖子,粉丝,评论,我想使用joinWith()来获取帖子及其评论和粉丝名称(在粉丝表中)以供发布和评论. 我写的是这个查询: pre facebook_posts::find()-joinwith('fans')-joinWith('comments')-all();/pre 我为关系添加了这两个函数: pr
我正在使用yii2,我有3个表:帖子,粉丝,评论,我想使用joinWith()来获取帖子及其评论和粉丝名称(在粉丝表中)以供发布和评论.
我写的是这个查询:

<pre>
 facebook_posts::find()->joinwith('fans')->joinWith('comments')->all();
</pre>

我为关系添加了这两个函数:

<pre>
    public function getfans() {
        return $this->hasOne(Fans::className(),['id' => 'from_id'])->from(fans::tableName() . ' FBF');
    }
    public function getComments() {
        return $this->hasMany(Comments::className(),['parent_id' => 'id'])->from(comments::tableName() . ' FBC');
    }
</pre>

这给了我写帖子及其评论的粉丝的帖子和数据,但我需要的是粉丝的数据也写了评论,所以如何加入评论与粉丝表?

解决方法

确保您的评论模型中有粉丝关系,然后您可以使用以下内容获取每个帖子的所有评论以及每条评论的粉丝关系:

facebook_posts::find()->joinWith('fans')->joinWith(['comments','comments.fan'])->all();

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读