繁体   English   中英

yii CGridView和比较运算符

[英]yii CGridView & Comparison Operators

我想通过使用比较运算符来限制显示在gridview中的项目的结果。

就像是:

$model->dateEnd >= date("Y-m-d");

我可以在控制器中执行某些操作吗? 还是必须在模型的搜索方法中完成?

您可以通过向数据提供者添加条件来筛选CGridView中显示的结果。 例如:

$dataProvider=new CActiveDataProvider('Post', array(
  'criteria'=>array(
    'condition'=>'dateEnd >= NOW()',
  ),
  'pagination'=>array(
    'pageSize'=>20,
  ),
));

CActiveDataProvider文档具有更多信息。

您可以设置“参数化命名范围”,该语法将用于与您要求的语法类似的语法:

$models->after($date);

Yii指南显示了如何在模型中实现命名范围,如下所示:

public function after($date='2011-11-11')
{
    $this->getDbCriteria()->mergeWith(array(
        'condition'=>'dateEnd >=  :endDate',
        'params'   => array(":endDate"=>"%$date%")
        ));
    return $this;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM