欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Laravel5.1 框架分页展示实现方法实例分析

程序员文章站 2023-11-22 14:38:28
本文实例讲述了laravel5.1 框架分页展示实现方法。分享给大家供大家参考,具体如下: laravel为我们提供了一套分页的逻辑,我们无需自己实现分页逻辑,只需要执行几个简单的方...

本文实例讲述了laravel5.1 框架分页展示实现方法。分享给大家供大家参考,具体如下:

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" rel="external nofollow" rel="external nofollow" >
</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" rel="external nofollow" rel="external nofollow" >
</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>