1. 程式人生 > >Laravel5.1 分頁展示

Laravel5.1 分頁展示

extends pcdn spa 參數 實現 compact styles ted derby

Laravel為我們提供了一套分頁的邏輯,我們無需自己實現分頁邏輯,只需要執行幾個簡單的方法就能實現漂亮的分頁。


1 simplePaginate

這是一種只顯示上一頁下一頁的樣式分頁,我們來看看怎麽用:

class PostController extends Controller
{
    public function index()
    {
//        $posts = Post::simplePaginate(10);      這是Model的版本
        /**
         * simplePaginate
         * 第一個參數:每頁顯示多少條數據。
         * 第二個參數:(可選)查詢的字段 默認是*
         * 第三個參數:(可選)頁碼名稱 默認是page
         
*/ $posts = DB::table(‘posts‘)->simplePaginate(10); return view(‘post.index‘, compact(‘posts‘)); } }

然後在blade模板中用$posts->render()顯示:

<!DOCTYPE html>
<html>
<head>
    <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css"
> </head> <body> <div class="container"> <h1>Posts</h1> <hr> <ul> @foreach($posts as $post) <li> <h4>{{ $post->title }}</h4> <p>{{ str_limit($post->content) }}</
p> </li> @endforeach </ul> {!! $posts->render() !!} </div> </body> </html>


2 Paginate

這是一個自帶頁碼的樣式分頁。

class PostController extends Controller
{
    public function index()
    {
//        $posts = Post::paginate(10);      這是Model的版本
//        $posts = Post::where(‘create_at‘, ‘<‘, Carbon::now())->paginate();    可以在where等邏輯後使用
        /**
         * simplePaginate
         * 第一個參數:每頁顯示多少條數據。
         * 第二個參數:(可選)查詢的字段 默認是*
         * 第三個參數:(可選)頁碼名稱 默認是page
         * 第四個參數:(可選)代表第幾頁 默認是null
         */
        $posts = DB::table(‘posts‘)->orderBy(‘created_at‘, ‘desc‘)->paginate(10);
        return view(‘post.index‘, compact(‘posts‘));
    }
}

然後在blade模板中用$posts->render()顯示:

<!DOCTYPE html>
<html>
<head>
    <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css">
</head>

<body>
<div class="container">
    <h1>Posts</h1>
    <hr>
    <ul>
        @foreach($posts as $post)
            <li>
                <h4>{{ $post->title }}</h4>
                <p>{{ str_limit($post->content) }}</p>
            </li>
        @endforeach
    </ul>
    {!! $posts->render() !!}
</div>
</body>
</html>

Laravel5.1 分頁展示