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()显示:
Posts
@foreach($posts as $post)
{!! $posts->render() !!}- @endforeach
{{ $post->title }}
{{ str_limit($post->content) }}
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()显示:
Posts
@foreach($posts as $post)
{!! $posts->render() !!}- @endforeach
{{ $post->title }}
{{ str_limit($post->content) }}
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
长按识别二维码并关注微信
更方便到期提醒、手机管理