Witam,
Mam mały problem, stworzyłem sobie WhGridView
$this->widget('yiiwheels.widgets.grid.WhGridView', array(
'fixedHeader' => true,
'headerOffset' => 40,
'type' => 'striped bordered',
'filter'=>$model,
'id'=>'stan-grid',
'ajaxUpdate'=>true,
'dataProvider' => $model->search(),
'responsiveTable' => true,
'template' => "{items} {pager}",
'columns'=>array(
array(
'name'=>'imie_nazwisko',
'filter' => CHtml::activeDropDownList($model,'imie_nazwisko',$imie_nazwisko_list),
'value' => $model->imie_nazwisko,
),
array(
'name'=>'wartosc',
'filter' => false,
),
array(
'name'=>'[rodzaj].nazwa',
'filter' => false,
),
),
));
Który zaopatrza w dane ta oto funkcyjka:
public function search()
{
$criteria=new CDbCriteria;
$rodzajeArray= array();
$rodzaje = Rodzaj::model()->findAll();
foreach($rodzaje as $rodzaj){
$rodzajeArray[] = $rodzaj->nazwa;
}
$database = Yii::app()->db->createCommand('SELECT DB_NAME(DB_ID()) AS dbname')->query()->read();
$criteria->alias = 'stan';
$criteria->join='LEFT JOIN '.$database['dbname'].'.dbo.tbl_rodzaj as rodzaj ON [rodzaj].map2 =
[stan].map2';
$criteria->compare('[rodzaj].nazwa',$rodzajeArray,true);
$criteria->compare('[rodzaj].map2',$this->map2,true);
$criteria->compare('[stan].imie_nazwisko',$this->imie_nazwisko,true);
$criteria->compare('[stan].wartosc',$this->wartosc,true);
return new CActiveDataProvider($this, array(
'criteria'=>$criteria,
'pagination'=>array(
'pageSize' => 10,
),
));
}
Problem polega na tym, że w kolumnie
array(
'name'=>'[rodzaj].nazwa',
'filter' => false,
'value'=>$model->nazwa,
),
Brak jakichkolwiek danych, ponadto filtrowanie w kolumnie
imie_nazwisko
też nie działa, nie mam pojęcia dlaczego. Ponadto prześledziłem zapytanie w SQLprofilerze i dane są ok. Liczę na pomoc.
Pozdrawiam.