Cactivedataprovider + Cgridview + With() Geht Nicht

Hallo zusammen,

ich versuche CActiveDataProvider um with zu erweitern, jedoch erhalte ich ständig im CGridView folgende Fehlermeldung wenn ich auf folgende Eigenschaft versuche zuzugrifen

‘$data->landingpagesgroups->name’,

Trying to get property of non-object

Modell




public function search()

{

	$oCriteria = new CDbCriteria;

	$oCriteria->compare('id',$this->id);

        $oCriteria->compare('label',$this->label);

	$oCriteria->compare('template',$this->template,true);

        $oCriteria->with = array('landingpagesgroups');


	return new CActiveDataProvider($this, array(

		'criteria'=> $oCriteria,

           'pagination' => array(

               //'pageSize'  => 2,

            )

	));

	}



Controller




public function actionIndex()

{

	$oLandingpage = new Landingpages('search');

        $oLandingpage->unsetAttributes();  // clear any default values

   	$this->render('index',array(

		'oLandingpage' => $oLandingpage,

	));

}



View




<?php $this->widget('zii.widgets.grid.CGridView', array(

   'id'            => 'landing-pages-grid',

   'dataProvider'  => $oLandingpage->search(),

   'filter'        => $oLandingpage,

   'columns'=>array(

        array(

            'name'	=>	'id',

            'htmlOptions'=>	array('style' => 'width:6%'),

        ),

        array(

            'filter'	=>	CHtml::listData(Landingpagesgroups::model()->findAll(array('select' => 'id,name')), 'id', 'name'),

            'value'	=>	'$data->landingpagesgroups->name',

            'name'	=>	'alg_id',

            'htmlOptions'=>	array('style' => 'width:21%'),

        ),



Kann mir hier bitte jemand weiterhelfen.

danke!

Kann es sein, dass landingpagesgroups ein array ist? wenn ja, kannst du davon nicht "->name" bekommen. Du musst ein element des arrays auswählen. Das erste bekommst du mit &#036;data-&gt;landingpagesgroups[0]-&gt;name. bedenke aber, dass es eventuell nicht existiert, du musst also erst prüfen, ob es da ist:


'isset($data->landingpagesgroups[0]) ? $data->landingpagesgroups[0]->name : "nichts"'