本文介绍了如何在laravel中使用paginator :: make()在视图中显示结果集?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已使用Paginator::make对表中的记录进行分页.在视图中,我正在获取分页链接,但是每个链接中都包含所有记录.如何将其限制为perPage个项目?

I have used Paginator::make to paginate the records in the table. In the view, I am getting the pagination links, but every link has all the records in it. How to restrict it to perPage items?

    $datas = Paginator::make($paginator, count($paginator), $perPage);
    return $datas;

代码输出:

{"total":10,"per_page":5,"current_page":1,"last_page":2,"from":1,"to":5,"data":      
[{"id":"10","languages":"ds","created_at":"2014-05-23 
11:59:02.000","created_by":"1","updated_at":"2014-05-23 
11:59:02.000","updated_by":"1","is_active":"1"},
{"id":"9","languages":"urdu","created_at":"2014-05-23 
11:57:24.000","created_by":"1","updated_at":"2014-05-23 
11:57:24.000","updated_by":"1","is_active":"1"},
{"id":"8","languages":"were","created_at":"2014-05-23 
11:55:49.000","created_by":"1","updated_at":"2014-05-23 
11:55:49.000","updated_by":"1","is_active":"1"},  
{"id":"7","languages":"delete","created_at":"2014-05-23  
11:54:57.000","created_by":"1","updated_at":"2014-05-24  
06:02:46.000","updated_by":"1","is_active":"1"},
{"id":"6","languages":"sdf","created_at":"2014-05-23 
11:53:11.000","created_by":"1","updated_at":"2014-05-23 
11:53:11.000","updated_by":"1","is_active":"1"},
{"id":"5","languages":"dada","created_at":"2014-05-23 
11:51:33.000","created_by":"1","updated_at":"2014-05-24 
05:44:34.000","updated_by":"1","is_active":"1"},
{"id":"4","languages":"English","created_at":"2014-05-23 
11:49:49.000","created_by":"1","updated_at":"2014-05-23 
11:49:49.000","updated_by":"1","is_active":"1"},
{"id":"3","languages":"asdfgf","created_at":"2014-05-23 
11:48:20.000","created_by":"1","updated_at":"2014-05-23 
11:48:20.000","updated_by":"1","is_active":"1"},
{"id":"2","languages":"Tamil","created_at":"2014-05-23 
10:55:50.000","created_by":"1","updated_at":"2014-05-23 
10:55:50.000","updated_by":"1","is_active":"1"},
{"id":"1","languages":"Tamil","created_at":"2014-05-23 
10:51:42.000","created_by":"1","updated_at":"2014-05-26 
04:41:27.000","updated_by":"1","is_active":"1"}]}

推荐答案

实际上,Paginator :: make函数只需要传递所需的值,而不传递所有值.因为paginator :: make函数只是显示发送给它的数据.要将正确的偏移分页数据发送到paginator :: make,应遵循以下方法

Actually Paginator::make function we need to pass only the required values instead of all values. Because paginator::make function simply displays the data send to it. To send the correct offset paginated data to the paginator::make, the following method should be followed

    $paginator = json_decode($response);
    $perPage = 5;   
    $page = Input::get('page', 1);
    if ($page > count($paginator) or $page < 1) { $page = 1; }
    $offset = ($page * $perPage) - $perPage;
    $articles = array_slice($paginator,$offset,$perPage);
    $datas = Paginator::make($articles, count($paginator), $perPage);

希望这会帮助某人...

Hope this will help someone...

这篇关于如何在laravel中使用paginator :: make()在视图中显示结果集?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-21 01:33