带搜索条件的Yii 1.1 TbGridView不适用

时间:2018-01-07 10:47:04

标签: gridview yii conditional-statements

查看网格构建位置的代码:

gleicherKunde是德语:" sameCustomer"

 <?php
    $model = new Person("search");
    $model->gleicherKunde = 1;

    $this->widget('bootstrap.widgets.TbGridView',array(
        'id'=>'person-grid',
        'dataProvider'=>$model->search(),
        'columns'=>array(
            'id',


            'vorname',
            'nachname',
            'funktion',
            /*'durchwahl',*/
            'telefonMobile',
            array(
                'class'=>'bootstrap.widgets.TbButtonColumn',
            ),
        ),
    ));
}

?>

在我为同一个人提供条件的模型中(客户)

if($this->gleicherKunde) {

    $kunde = Kunde::model()->findByAttributes(array('id'=>'t.kunde'));
    if (isset($kunde)) {
        $criteria->AddCondition('t.kunde = "'.$kunde->id.'"' );
    }
}

问题是,我每次都会得到所有人,而不仅仅是那个身份不明确的人。

如果我用每个例子145的ID替换t.kunde,我只得到身份为145的客户。

我的思维错误在哪里?

1 个答案:

答案 0 :(得分:0)

我找到了一个解决方案来替换Dataprovider:

$model = new Dial("search"); 

$model->nichtZugeordnet = true;

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

 $dataProvider=new CActiveDataProvider('Person', array(
        'criteria'=>array(
            'condition'=>'kunde= '.$model->id,