Laravel Paginate不工作

时间:2017-05-31 06:28:18

标签: php laravel pagination

我试图使用以下查询使用“查询”构建器对某些数据进行分页。

public function productSearch(Request $request)
{
     $name = $request->name; 
     $products = DB::table('products')                  
         ->where('name', 'LIKE', "%$name%")             
         ->paginate(4);

     return view('product',compact('products');
}

但是当我尝试在视图页面中显示带有以下行

的分页时
{{ $products->links() }}

显示

  

方法链接不存在

由于分页没有显示,可能出现的错误是什么?

5 个答案:

答案 0 :(得分:1)

2种类型可在laravel中打印分页链接- 尝试-

use Illuminate\Support\Facades\DB;
public function productSearch(Request $request)
{
     $name = $request->name; 
     $products = DB::table('products')                  
         ->where('name', 'LIKE', "%$name%")             
         ->paginate(4);

     return view('product',['products' => $products]);
}

视图中-

<div class="container">
    @foreach($products as $product)
        <h4>{{ $product['name'] }}</h5> <br>
    @endforeach
</div>

第一种类型定义为laravel分页链接-

   {{ $products->links() }}

第二种类型定义laravel分页链接-

   {{ $products->render(); }}

注意-您也错过了代码-> return view('product',compact('products')); in return view('product',compact('products'); Desired output -

答案 1 :(得分:0)

更改为:

return view('product',compact('products'));

在查看页面中尝试:

{{$products->render()}}

答案 2 :(得分:0)

在您的控制器中:

queryset

在您的视图中:

return view('product',compact('products');

答案 3 :(得分:0)

尝试:

{{ $products->render() }}

答案 4 :(得分:0)

这是您的解决方案。 只需更改您的退货视图选项

return view('product')->with('products', $products);

希望这会对你有所帮助。