2016-04-01 16 views
1

Bir arama modeli vardır: Ben GridView'da içineYii2. Arama modelindeki alt sorgu alanına nasıl erişilir?

 [ 
      'attribute' => 'my_orders_count', 
      'value' => function ($model) { 
       return $model->my_orders_count; 
      } 
     ], 

yazdırmak çalışıyorum zaman

$query = User::find(); 
$myOrdersQuery = Request::find() 
          ->select('count(*)') 
          ->where([ 
           'user_id' => $clientsIds, 
           'agent_id' => $this->viewer->id, 
          ]); 
$query->addSelect(['my_orders_count' => $myOrdersQuery]); 

o Alma bilinmeyen özelliği diyor ki: Ortak \ modeller \ Kullanıcı :: my_orders_count

Bu alana erişim için yardım edin!

cevap

2

seçme

Kullanıcı modelinde bir public var

public user_count; 

kullanım takma

reklam

..... 
$myOrdersQuery = Request::find() 
         ->select('count(*) as user_count') 
         ->where([ 
         .... 

sonra basitçe bekliyoruz @Maxim GRIDVIEW

[ 
     'attribute' => 'user_count', 

    ], 
+0

kamu alan adı başvurmak – scaisEdge