【问题标题】:how to do manual pagination in laravel 3如何在 laravel 3 中进行手动分页
【发布时间】:2014-01-13 07:32:49
【问题描述】:

我经历了这个,但它不能正常工作

$orders = Paginator::make($orders, $total, $per_page);

我在数据库中有 2000 条记录,我想总共只获取 200 条记录,每页我想要 10 条记录,我正在使用全文匹配查询。

$data=Item::raw_where("match (`name`) against ('*{$search_text}*' IN BOOLEAN MODE)")->where_value('verified')->order_by('created_at', 'DESC')->paginate(10);

任何人都可以提前帮我解决这个问题..thanx

【问题讨论】:

    标签: php pagination laravel-3


    【解决方案1】:

    Paginator::make($items, $total, $per_page) 它有 3 个参数。

    $items - 查询结果记录集

    $total - 获取结果的记录数

    $per_page - 你想要的每页记录数

    这里,分两步进行手动分页

    第一步:先统计记录数

    $cc=Item::raw_where("match (`name`) against ('*{$search_text}*' IN BOOLEAN MODE)")->count();
    if($cc>2000){$cc=2000;}
    $per_page=200;
    $page=Input::get('page',1);
    

    第 2 步:对记录进行分页

    $nn=Item::raw_where("match (`name`) against ('*{$search_text}*' IN BOOLEAN MODE)")->take($per_page)->skip(($page-1)*$per_page)->get();
    $data=Paginator::make($nn, $cc, $per_page);
    

    您将在 $data 变量中获得分页记录。

    【讨论】:

    • thanx man .. 两个查询,一个用于计数,另一个用于分页。
    猜你喜欢
    • 2016-10-03
    • 1970-01-01
    • 1970-01-01
    • 2014-05-08
    • 1970-01-01
    • 2019-01-26
    • 2021-06-22
    • 2021-09-27
    • 2018-09-04
    相关资源
    最近更新 更多