Yii PHP将分页添加到我的网站

时间:2018-05-01 11:04:58

标签: php yii

我想在我的网站上添加分页,但我对Yii很新,并希望得到一些建议。

这是我要添加分页的页面:TableColumn#setResizable(false)

正如你所看到的,每个汽车新闻都有很多单元格,现在我只允许在页面上显示18条新闻。我想在这里添加分页,以便我可以浏览更多新闻。

这就是我的尝试:

newscontroller.php

$this->renderPartial('centermore', compact('products', 'Pagination'));

newsview.php将呈现所有顶级菜单和横幅,它将呈现centermore.php

LinkPager::widget(['Pagination' => $Pagination])

centermore.php(查看新闻单元格),然后我在底部添加了LinkPager小部件。

cd data/

rm -rf mongod.lock*

cd ..

mongod --repair

./mongod

当然,有一个错误,无法找到Class LinkPager。 任何人都可以给我一些建议如何解决这个/实现分页?

1 个答案:

答案 0 :(得分:0)

在Yii2中,分页通常是通过DataProvider处理的,请查看:
Yii2 Guide: Data Providers,尤其是ActiveDataProvider

use yii\data\ActiveDataProvider;

$query = Post::find()->where(['status' => 1]);

$provider = new ActiveDataProvider([
    'query' => $query,
    'pagination' => [
        'pageSize' => 10,
    ],
    'sort' => [
        'defaultOrder' => [
            'created_at' => SORT_DESC,
            'title' => SORT_ASC, 
        ]
    ],
]);

// returns an array of Post objects
$posts = $provider->getModels();