0
私は2つのテーブル代理店と代理店を持っていますが、各代理店がカウントクエリを使用している代理店の数を表示したい( "代理店"テーブルに 'agency_id' 。ここではold postがstackoverflowにありますが、完全には答えられていません。ここでYii2 - activerecordを使用したgridviewの関係データの数を表示
は、私がこれまで試したものです:
機関モデルでは(エージェントはGridViewの機関でカウントを取得するために):
*/
public function getAgents()
{
return $this->hasMany(Professionnels::className(), ['agency_id' => 'id']);
}
エージェントモデルでは(GridViewのエージェントに代理店の名前を取得するには):
'columns' => [
....,
['label' => 'Agents Number','attribute' => 'count(agents.id'),]
:GridViewのを示している代理店に鑑み
public function getAgencies()
{
return $this->hasOne(Agencies::className(), ['id' => 'agency_id']);
}
そしてAgenciesSearch中:
$query = Agencies::find()->with('agents');
それは魅力として動作します。私はまだ並べ替え&filtringを定義する必要がありますが、あなたに感謝 –