方法顺序在Laravel Eloquent中不存在?

2022-08-30 15:05:57

我有一段这样的代码:

$products = Product::all()

if ($search_value) {
    $products = $products->where('name', 'LIKE', "%$search_value%");
}

$products = $products->orderBy('created_at', 'desc')->skip(10)->take(10)->with('tags')->get();

我得到以下错误:

BadMethodCallException in Macroable.php line 81:
Method orderBy does not exist.

我想需要直接关注,但我无法保存,可以吗?orderByProduct::$products = Product::

有什么建议吗?谢谢。


答案 1

您正在尝试在雄辩集合上使用方法。尝试改用 sortByDesc()。orderBy()

或者,也可以更改为 。然后,您的所有代码都将按预期工作。$products = Product::all();$products = new Product();


答案 2

只需使用一行代码即可正常工作

$product= Product::orderBy('created_at','desc')->get();

推荐