2012-11-26 2 views
0

Как мы можем выполнить приведенный ниже результат запроса в cgridview, используя 3 модели.?3 модели данных запроса в cgridview с использованием рамки yii

select a.id, 
    a.name, 
    b.group_id, 
    c.id, 
    c.client_id, 
    c.title 
from   users_phone_numbers a, 
phone_number_group_assignment b, 
       client_groups c 
where a.id = b.phone_number_id 
and  b.group_id=c.id; 

плз ответить спасибо

ответ

0

Используйте CArrayDataProvider

$rawData=Yii::app()->db->createCommand('... query ...')->queryAll(); 
$dataProvider=new CArrayDataProvider($rawData, array(
    'id'=>'a.id', 
    'sort'=>array(
     'attributes'=>array(
       'a.name, b.group_id, ...', 
     ), 
    ), 
)); 

Pass $dataProvider как DataProvider на ваш взгляд сетки.

+0

таким образом Query делается хорошо. но как мы можем сортировать/фильтровать записи многострочных моделей на одной странице, используя cgridview, используя yii framework cgridview ??? –

+0

Отредактировал свой ответ, как описано в приведенной ссылке. Но не уверен, что сортировка будет работать. – jborch