0

是否可以按月对网格视图进行分页?我猜我可以通过 ActiveDataProvider 添加标准并创建导航以每月生成结果来实现这一点。但是 Yii 中是否已经有一种简单的方法或内置的东西?

4

2 回答 2

0

分页根据返回的结果数起作用。查询中的Maybegroup by子句将是执行此操作的最佳方式。

这个话题也可能对你有帮助。如何在 Yii CListView 中按日期对项目进行分组?

和这个:

http://www.yiiframework.com/forum/index.php/topic/39202-cgridview-datas-group-by-months/

于 2014-02-13T14:55:37.743 回答
0

这可能会在 Dataprovider 分页部分或使用 CPagination 中完成。给出的例子

function actionIndex(){
$criteria=new CDbCriteria();
$count=Article::model()->count($criteria);
$pages=new CPagination($count);

// results per page
$pages->pageSize=10;
$pages->applyLimit($criteria);
$models=Article::model()->findAll($criteria);

$this->render('index', array(
'models' => $models,
     'pages' => $pages
));

}

这里是可用的属性

  1. 当前页面
  2. 项目计数
  3. 限制
  4. 抵消
  5. 页数
  6. 页面大小
  7. 页面变量
  8. 参数
  9. 路线
  10. 验证当前页面

您可以手动将 pageCount 设置为 12,或者在传递正确的值之前先检查每个月的数据。

您最好的选择是然后查看 pageSize 并查看是否有传递这个值数组(即每个月的计数)

我一直无法在这方面找到任何更充分的信息,这令人惊讶,因为其他人尝试这样做似乎是相当合乎逻辑的。

也许尝试在 Yii 论坛上发帖,因为我以前在那里取得了很好的成功。

有关上述信息,请参阅以下链接。

http://www.yiiframework.com/doc/api/1.1/CPagination

更新

http://www.yiiframework.com/forum/index.php/topic/42936-solved-custom-page-size-for-cgridview-error/

http://www.ramirezcobos.com/2010/11/30/custom-page-size-for-cgridview/

于 2014-02-13T15:13:01.057 回答