3
의 번호는 Yii2
에 user_comment_user
이라는 표에 viaTable
이라는 표를 사용하여 찾으려고합니다. 그러나 내 variables
/query
을 제대로 삽입하지 못했습니다.Yii2 viaTable 다중 변수
현재 두 개의 queries
이 설정되어있어 (자체적으로) 올바른 결과를 얻을 수 있는지 확인합니다.
이
은 어떻게 든해야 두queries
merged
하나에 :
public function findConversation($id)
{
$query = $this->hasMany(UserComment::classname(), ['id'=>'user_comment_id'])
->viaTable('user_comment_user', ['sender_id'=>'id'], function ($query) use ($id) {
$query->andWhere(['receiver_id'=>$id]);
});
$query2 = $this->hasMany(UserComment::classname(), ['id'=>'user_comment_id'])
->viaTable('user_comment_user', ['receiver_id'=>'id'], function ($query) use ($id) {
$query->andWhere(['sender_id'=>$id]);
});
return $query;
}
당신은 더 많은 비트를 설명 할 수 무엇 예상되는 결과는 무엇입니까? –
@ KostasMitsarakis sender_id가 $ this-> id이고 receiver_id가 $ id이고, 그 반대의 경우 UserComment를 모두 가져와야합니다. 날짜순으로 정렬. –