如何修改GridView小部件中的Yii2分页以显示第一页和最后一页?

Gor*_*ni4 14 php pagination gridview yii2

分页的默认视图是"1,2,3,...,10"

我需要将其转换为"(第一页),x,x,x,(当前页面),x,x,x,(最后一页)"

我怎样才能做到这一点?

Liz*_*Liz 23

<?= GridView::widget([
    'pager' => [
        'firstPageLabel' => 'First',
        'lastPageLabel'  => 'Last'
    ],
    ...
]) ?>
Run Code Online (Sandbox Code Playgroud)


aro*_*hev 20

您需要指定LinkPager的$ firstPageLabel$ lastPageLabel属性(它们默认表示这些链接未显示).你可以把它传递给那样:falseGridView

<?= GridView::widget([
    ...
    'pager' => [
        'firstPageLabel' => 'First',
        'lastPageLabel' => 'Last',
    ],
    ...
]) ?>
Run Code Online (Sandbox Code Playgroud)

对于样式,还有两个附加属性:$ firstPageCssClass$ lastPageCssClass.

请注意,您可以LinkPager单独应用它,而不使用GridView.


jon*_*anm 6

请注意,从 Yii2 2.0.11 版开始,您可以使用 config/main.php 文件中的容器定义为整个应用程序设置firstPageLabellastPageLabel默认值:

$config = [

    ....

    'container' => [
        'definitions' => [
            'yii\widgets\LinkPager' => [
                'firstPageLabel' => 'First',
                'lastPageLabel'  => 'Last'
            ]
        ]
    ]
];
Run Code Online (Sandbox Code Playgroud)

http://www.yiiframework.com/doc-2.0/guide-concept-configurations.html#application-configurations了解更多信息