0

dataproviderforCGridViewを定義しようとしましyiiたが、これを取得しています

エラー 500: 非オブジェクトのプロパティを取得しようとしています

以下は私のモデルとview/admin.phpコードスニペットです

model.php:

public function search2()
{
    $sql='select family_tree.tree_creator_id, C.user_fullname, 
    family_tree.tree_user1_id, A.user_fullname,
    family_tree.tree_user2_id,B.user_fullname,
    family_tree.tree_type, family_tree.tree_type_name
    from family_tree
    join user A on A.user_id=family_tree.tree_user1_id
    join user B on B.user_id=family_tree.tree_user2_id
    join user C on C.user_id=family_tree.tree_creator_id
    ';

    if($this->tree_creator_id!=NULL)
    {
        $sql.="where family_tree.tree_creator_id='$this->tree_creator_id'";
    }

    $a= Yii::app()->db->createCommand($sql)
    ->queryAll();

    return new CArrayDataProvider($a, array(
        'id'=>'family-tree',
        'keyField'=>'tree_id'));
}

admin.php:

    <?php echo CHtml::link('Advanced Search','#',array('class'=>'search-button')); ?>
<div class="search-form" style="display:none">

    <?php $this->renderPartial('_search',array(
    'model'=>$model,
    )); ?>
</div><!-- search-form -->

    <?php $this->widget('zii.widgets.grid.CGridView', array(
    'id'=>'family-tree-grid',
    'dataProvider'=>$model->search2(),

    'columns'=>array(
        'tree_id',
        'tree_creator_id',
        'tree_user1_id',
        'tree_user2_id',
        'tree_type',
        'tree_type_name',

        /*'tree_grey_flag',*/

        array(
            'class'=>'CButtonColumn',
        ),
    ),
)); ?>

助けていただければ幸いです、ありがとう!

4

1 に答える 1