我正在尝试将范围链接到分页方法,但我反而为该方法获取了badmethodcallexception;
$products = Product::paginate(3)->forstore();
forstore方法就是范围。
public function scopeForstore($query) {
...
}
如何实现所需的结果,即为分页查询添加范围?
答案 0 :(得分:3)
->paginate(x)
,->get()
,->first()
...方法结束查询。他们告诉查询是时候返回结果(他们返回集合或模型)。你正在做的是在集合上调用范围而不是查询。
交换它们:
$products = Product::forstore()->paginate(3);
答案 1 :(得分:2)
您应该在调用paginate函数之前直接在构建器上应用范围,如下所示:
Product::forstore()->paginate(3);