繁体   English   中英

如何在Laravel中显示分页?

[英]How can I display pagination in laravel?

我使用laravel 5.6

我尝试了这个文档: https : //laravel.com/docs/5.6/pagination

我的控制器是这样的:

public function index()
{
    $products = $this->product->list(); 
    dd($products);
    return view('admin.product.index',compact('products'));
}

我的清单功能是这样的:

public function scopeList($query)
{
    return $query->orderBy('updated_at', 'desc')->paginate(20);
}

如果我dd($products); ,结果是这样的:

在此处输入图片说明

在视图laravel上,我添加以下代码:

 {{ $products->links() }}

然后我在网上检查,结果为空

为什么结果为空?

有什么不对?

如果未显示图像,请访问此处: https : //postimg.org/image/w39usbfrv/

您的控制器代码将如下所示

$products = DB::table('products')->paginate(20);
return view('admin.product.index', ['products' => $products ]);

您的查看页面代码如下所示

   @foreach ($products as $product)
         {{ $product->product_name}}
    @endforeach
    {{ $products->links() }}

注意:添加更多项目以超出您的限制,以查看分页链接

在laravel分页中可以使用两种方法来完成

1)使用查询生成器结果

$products= DB::table('products')->paginate(15);

要么

$products= DB::table('products')->simplePaginate(15);

如果只需要在分页视图中显示简单的“下一个”和“上一个”链接,则可以使用simplePaginate方法。

2)使用雄辩的结果

$products= App\Products::paginate(15);

打印分页链接

{{ $products->links() }}

使用以下内容自定义分页视图

{{ $paginator->links('view.name') }}

或者您可以参考此链接以获取更多自定义分页视图

自定义分页视图在Laravel 5中

使用paginate()函数

App\Product::paginate();

或按查询生成器:

$products= DB::table('products')->paginate(15);

这是因为,您要分页列出20种产品,而您只有11种产品。 这就是为什么只有在您请求的产品数量多于此数量时,才会出现分页。对于您来说,您只有一页,有11种产品。 查看顶部#total:11lastpage:1 ,这就是空分页的原因,因为没有要分页的内容。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM