2015-04-24 66 views
1

有2個活動記錄模型問題(Q)和答案(A)。Yii2,ActiveQuery搜索模型是否存在關係模型

爲了簡單起見,我省略不重大屬性:

  • Q:question_id
  • :answer_id,question_id

Q的hasMany ,鏈路由question_id

public function getAnswers() 
{ 
    return $this->hasMany(Answer::className(), ['question_id' => 'question_id']); 
} 

我怎樣才能找到創造查詢只發現Q車型,其中至少有一個相關一個模式?

此查詢在ActiveDataProvider中基本需要Q搜索模型。

回答

1

使用innerJoinWithdoc):

Q::find()->innerJoinWith(['answers'])->all(); 
+0

謝謝@ vitalik_74,它的工作原理。對於ActiveDataProvider查詢,必須沒有' - > all()' –