【问题标题】:Yii2 listview pagination positionYii2 listview分页位置
【发布时间】:2019-12-05 09:33:07
【问题描述】:

我希望 listview 在列表底部显示分页,但它出现在 当我想渲染列表视图时,列表顶部是我的代码:

'layout' => "{pager}\n{summary}\n{items}\n",

另外,我像这样更改寻呼机:'layout' => "{summary}\n{items}\n{pager}", 但它显示在左侧。

【问题讨论】:

  • 默认分页位置在列表底部。您根本不必设置布局参数。
  • @tsanchev 不设置布局参数时显示在左侧
  • 您可能有一些 css 类应用于导致它的列表视图
  • @Mehran 如果你想在右边分页,你可以做类似'layout' => "{summary}\n{items}\n
    {pager}
    "
  • 只保留 yii 自带的默认 css 并禁用其他资产或 css 文件并查看列表视图是否正确显示,否则可能是由于您的 html 中缺少结束标记

标签: listview pagination yii2 yii2-advanced-app


【解决方案1】:

你可以先在模型搜索中禁用分页


$dataProvider = new ActiveDataProvider([
    'query'      => SomeModelClass::find(),
    'pagination' => false,
]);

你的控制器就像

public function actionIndex()
{
    $query = Article::find()->where(['status' => 1]);
    $countQuery = clone $query;
    $pages = new Pagination(['totalCount' => $countQuery->count()]);
    $models = $query->offset($pages->offset)
        ->limit($pages->limit)
        ->all();

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

并在顶部手动添加分页

echo LinkPager::widget([
    'pagination' => $pages,
]);

【讨论】:

  • 这绝不会解决 OP 面临的问题
猜你喜欢
  • 1970-01-01
  • 2015-10-20
  • 1970-01-01
  • 2020-04-01
  • 2015-07-07
  • 1970-01-01
  • 2015-02-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多