首页 > 解决方案 > 如何在 Laravel 中同时使用 get 和 paginate

问题描述

我想使用分页。我研究了是否使用 paginate() 我必须擦除 ->get()。但我得到了错误。你能教我如何添加分页吗?

我当前的代码

$images = ImageGallery::orderBy(DB::raw('LENGTH(wc), wc'))->get()->paginate(5);
        return view('image-gallery2',compact('images'));

刀片文件代码

{{ $image->links() }}

更新

如果我这样做

$images = ImageGallery::orderBy(DB::raw('LENGTH(wc), wc'))->get()->paginate(5);

这个错误

BadMethodCallException
Method Illuminate\Database\Eloquent\Collection::paginate does not exist. 

如果我在下面写

$images = ImageGallery::orderBy(DB::raw('LENGTH(wc), wc'))->paginate(5);
        return view('image-gallery2',compact('images'));

我收到了这个错误

Facade\Ignition\Exceptions\ViewException
Call to undefined method App\ImageGallery::links() (View: //resources/views/image-gallery2.blade.php) 

标签: laravellaravel-5

解决方案


您不需要get(), 直接:

$images = ImageGallery::orderBy(DB::raw('LENGTH(wc), wc'))->paginate(5);

在您的刀片中,您忘记了sfor $images,代码如下:

{{ $images->links() }}

推荐阅读