私は yii2 を使用しています。投稿、ファン、コメントの 3 つのテーブルがあります。joinWith() を使用して、コメント付きの投稿と、投稿とコメントのファン名 (ファン テーブル内) を取得したいと考えています。私が書いたのはこのクエリです:
<pre>
facebook_posts::find()->joinwith('fans')->joinWith('comments')->all();
</pre>
そして、リレーションに次の 2 つの関数を追加しました。
<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>
これにより、投稿とその投稿を書いたファンのデータとそのコメントが得られますが、コメントを書いたファンのデータも必要なので、どうすればコメントをファンテーブルに参加させることができますか??