【问题标题】:Yii framework 2.0 multiple paginations on one pageYii框架2.0一页多分页
【发布时间】:2015-02-08 23:29:15
【问题描述】:

使用 Yii 框架 2.0 我尝试使用分页功能和链接页面小部件,遵循 Yii 文档。

下面是我的控制器。

public function actionIndex()
{
    $query = Country::find();

    $pagination = new Pagination([
        'defaultPageSize' => 5,
        'totalCount' => $query->count(),
    ]);

    $countries = $query->orderBy('name')
        ->offset($pagination->offset)
        ->limit($pagination->limit)
        ->all();

    return $this->render('index', [
        'countries' => $countries,
        'pagination' => $pagination,
    ]);
}

在我的索引视图中,我使用以下代码。

<?= LinkPager::widget(['pagination' => $pagination]) ?>

现在我想为另一个模型 City 添加一个分页功能和 LinkPager 小部件。在 actionIndex() 方法中我遵循现有代码,只需创建一个 City 对象和一个 new Pagination 对象strong> 并将其返回到视图。在视图中,我再次包含 LinkPager 小部件和另一个分页变量 $paginationCity。当我单击分页编号时,我在 URL 中看到了查询字符串 page=xx。我注意到它同时用于 CountryCity 模型。如何在同一页面上使用多个分页?

【问题讨论】:

    标签: php pagination yii2


    【解决方案1】:

    您可以通过更改Pagination 类的pageParam 属性来实现:

    $cityPagination = new Pagination([
        ...    
        'pageParam' => 'city-page',
    ]);
    

    【讨论】:

    • 嗨,我在一个页面中有三个分页!为每个页面设置不同的 pageParam 后,分页不起作用!你能帮忙吗?
    • Pagination::pageSizeParam 在处理多个分页时也很有用。 pageSizeParam是Url中保存每页结果数的变量,默认'per-page'yiiframework.com/doc/api/2.0/…
    猜你喜欢
    • 2014-05-29
    • 2015-11-06
    • 1970-01-01
    • 2013-06-27
    • 1970-01-01
    • 2014-06-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多