首页 文章

laravel仅显示分页中的下一个和上一个链接

提问于
浏览
4

我想尝试使用Laravel Pagination,我只想显示上一个和下一个链接的数字1 2 3 ...

我怎么能这样做?我跟着Laravel页面:“简单的分页”

如果您只在分页视图中显示“下一步”和“上一页”链接,则可以选择使用simplePaginate方法执行更有效的查询 . 当您不需要在视图上显示确切的页码时,这对较大的数据集很有用:

$someUsers = User::where('votes', '>', 100)->simplePaginate(15);

但是当我在我的视图中执行此操作时,仍会显示页码:

<?php echo $someUsers->links(); ?>

有谁可以帮忙

谢谢

4 回答

  • 4

    tldr; you want to use simplePaginate() method on the query AND links('some.view') on the paginator (in the view) in order to achieve what you ask for.

    以下是在给定模板中显示所选链接所需的内容:

    // inline choose simple links (prev, next)
    {{ $someUsers->links('pagination::simple') }}
    
    // inline choose slider links
    {{ $someUsers->links('pagination::slider') }}
    
    // inline choose slider-3 (default)
    {{ $someUsers->links('pagination::slider-3') }}
    

    这些是框架的模板,放在laravels目录中: Illuminate/Pagination/views/

    您可以随时决定使用自定义模板,只需调用:

    // assuming you have it in app/views/pagination/my-links.blade.php
    {{ $someUsers->links('pagination.my-links') }}
    
    // or using views namespace (you need to define it first)
    {{ $someUsers->links('myNamespace::my-links') }}
    

    当然,您可以在 app/config/view.php 中将链接定义为默认链接:

    // instead of
    'pagination' => 'pagination::slider-3',
    
    // something like
    'pagination' => 'pagination.my-links',
    
  • 1

    你需要使用:

    $someUsers = User::where('votes', '>', 100)->simplePaginate(15);
    

    就像你用的那样

    app/config/view.php 中,您需要将 pagination 设置为 pagination::simple (默认设置为 pagination::slider-3 ) . 然后你将默认分页,如图所示:

    Simple pagination in Laravel

    您还可以为上一个和下一个项目编辑文件 lang/en/pagination.php 设置自定义文本(对于其他语言,您需要在其他lang目录中更改它) . 默认情况下,它设置为:

    'previous' => '&laquo; Previous',
    
    'next'     => 'Next &raquo;',
    

    但你可以把它改成:

    'previous' => '&laquo;',
    
    'next'     => '&raquo;',
    

    然后它看起来像在图像中:

    Simple pagination in Laravel  - arrows only

  • 2

    config/view.php

    /*
    |--------------------------------------------------------------------------
    | Pagination View
    |--------------------------------------------------------------------------
    |
    | This view will be used to render the pagination link output, and can
    | be easily customized here to show any view you like. A clean view
    | compatible with Twitter's Bootstrap is given to you by default.
    |
    */
    
    'pagination' => 'pagination::slider-3',
    

    将其设置为 simple .

    资料来源:http://youtu.be/lIEcyOUcNQk?t=8m00s

  • 14

    请参阅this manual page的最底部,了解如何为分页实现自定义视图 . 总结一下,您需要按照以下步骤操作:

    • app/views 中的某处创建一个paginator视图 .

    • app/config/views.php 中的 pagination 选项替换为Laravel用于定位新视图的路径 .

    • 在您的视图中显示您的自定义分页视图,如下所示:

    <?php echo with(new ZurbPresenter($paginator))->render(); ?>
    

    ZurbPresenter 是您的分页演示者的类名 .

相关问题