如何在yii框架中将文本字段更改为radiobutton列表并过滤空值

时间:2013-07-29 23:05:20

标签: php yii radiobuttonlist

我在高级搜索中使用文本字段。现在,我需要将文本字段“已审核日期”转换为2个单选按钮“已审核”和“未审核”。 “已审阅”按钮应显示ReviwedDate的所有行,而不是null,并且使用空值进行检查。我正在使用_search.php。 enter image description here

2 个答案:

答案 0 :(得分:1)

在模型中更改搜索功能:

public function search() {
    $criteria = new CDbCriteria;

    // ... other fields

    // ADD THIS
    if($this->reviewedDate != '') {
        $criteria->addCondition(
            'reviewedDate ' . ($this->reviewedDate=='1' ? 'IS NOT NULL' : 'IS NULL'),
        );
    }
    else {
        $criteria->addCondition('reviewedDate IS NULL');
    }

    return new CActiveDataProvider($this, array(
        'criteria'=>$criteria,
    ));
}

更改 _search.php

<div class="row">
    <?php echo $form->labelEx($model, 'reviewedDate'); ?>
    <?php echo $form->radioButtonList($model, 'reviewedDate', 
        array('1' => 'Reviewed', '' => 'Not Reviewed')
    ); ?>
</div>

答案 1 :(得分:0)

我认为您需要在表格中使用布尔字段(例如isReviewed)。然后,每当审核的项目将 1 分配给该字段时,默认值为 0 。然后在_search.php

CHtml::activeRadioButtonList($model,'isReviewed',array(
            1=>'Reviewed',
            0=>'Not Reviewed',
      )),

我希望有用。