Laravel 4与Bootstrap 3分页

Fra*_*ssi 0 pagination laravel laravel-4 twitter-bootstrap-3

我使用分页到bootstrap 3应用程序,并有一些错误.这就是我称之为分页的方式:

$newsletterUsers = NewsletterUser::paginate(2); 
Run Code Online (Sandbox Code Playgroud)

然后在foreach循环后我把它:

  {{ $newsletterUsers->links() }}
Run Code Online (Sandbox Code Playgroud)

没关系?但不是显示正常漂亮的laravel分页,而是数字一个在另一个上,没有样式,甚至没有正确分页,因为它用1 - 1 - 2个元素分页,而不是2 - 2,因为它应该是

这是html标记:

<div class="pagination">
  <ul>
<li><a href="---/public/newsletterConfirmedUser?page=2">&laquo;</a></li>
    <li><a href="---/public/newsletterConfirmedUser?page=1">1</a></li>
    <li><a href="---/public/newsletterConfirmedUser?page=2">2</a></li>
    <li class="active"><span>3</span></li><li class="disabled">
    <span>&raquo;</span></li>
  </ul>
</div>
Run Code Online (Sandbox Code Playgroud)

有人可以帮帮我吗?

小智 18

当您查看laravel 4核心框架的Paginator时,您将在视图文件夹vendor/laravel/Illuminate/Paginator/views中看到名为slider-3.php的文件!该视图使用bootstrap 3 paginator

<?php if ($paginator->getLastPage() > 1): ?>
<ul class="pagination">
        <?php echo $presenter->render(); ?>
</ul>
Run Code Online (Sandbox Code Playgroud)

知道这一点,你只需将app/config/view中的paginator更改为

    'pagination' => 'pagination::slider-3',
Run Code Online (Sandbox Code Playgroud)

并做了.


jfo*_*ato 8

Laravel目前仅适用于bootstrap 2的分页,但您现在可以使用变通方法,直到支持bootstrap 3.

首先通过在"app/views/pagination.php"创建一个新文件来创建一个将使用bootstrap 3的分页语法的视图

应用/视图/ pagination.php

<?php
        $presenter = new Illuminate\Pagination\BootstrapPresenter($paginator);
?>

<?php if ($paginator->getLastPage() > 1): ?>
        <ul class="pagination">
            <?php echo $presenter->render(); ?>
        </ul>
<?php endif; ?>
Run Code Online (Sandbox Code Playgroud)

然后打开文件app/config/view.php

在底部附近你会看到一条读数

'pagination' => 'pagination::slider',
Run Code Online (Sandbox Code Playgroud)

你可以改变阅读

'pagination' => 'pagination',
Run Code Online (Sandbox Code Playgroud)

现在你应该像往常一样使用laravels分页.