Yii根据ClistView获取pagesize

时间:2015-02-25 09:55:00

标签: php yii

如何在我的视图中获取当前的页面大小?我希望能够在达到一半页面大小时添加横幅。

如果页面尺寸为10,请在第5位插入横幅

我尝试在view.php

中添加此内容
if ($index == ($dataProvider->pagination->pageSize / 2)) { ... }

这是我的index.php

$this->widget ( 'site.common.extensions.EListView.EListView', array (
        'dataProvider' => $dataProvider,
        'itemView' => '_view_gallery',
        'pagerCssClass' => 'pagination',
        'template' => '
                <div class="row">
                <div class="col-md-12">
                <div class="row">
                    <div class="col-md-12">
                        <div class="pull-right">{sorter}</div>
                        <div class="pull-left"></div>
                    </div>
                </div>
                <div class="row">
                    <div class="col-md-12">{items}</div>
                </div>
                <div class="row padding-top-20px">
                    <div class="col-md-12">
                        {pager}
                    </div>
                </div>
                </div></div>',
        'pager' => array (
                'id' => '_pagination',
                'class' => 'LinkPager',
                'header' => '',
                'htmlOptions' => array (
                        'class' => 'pagination'
                )
        ),
        'emptyText' => '<div class="alert alert-info">No result found.</div>'
    )
);

但没有任何反应。

我目前正在使用此扩展程序来创建页面大小。

http://www.yiiframework.com/extension/elistview

也试过没有使用这个扩展,但仍然没有运气。 我使用的是Yii 1.1.16

任何想法?

1 个答案:

答案 0 :(得分:0)

在_view_gallery.php中,您可以使用CListView和CGridView(http://www.yiiframework.com/wiki/252/special-variables-in-cgridview-and-clistview/)可用的特殊变量来获取pageSize。

这可能是这样的:

if($widget->dataProvider->pagination->pageSize == 10){
  //do something here
}

直接访问$ dataProvider不会导致任何结果,因为该变量对视图没有任何意义。