【发布时间】:2016-03-16 14:22:06
【问题描述】:
我通过“产品”拥有“品牌”hasManyThrough“市场产品”。所以,
Brand >> Product >> MarketProduct
其中>> 表示hasMany 关系。我可以使用Brand 中定义的hasManyThrough() 方法获得MarketProducts 的集合(Illuminate\Database\Eloquent\Collection),如下所示。
$collection = Brand::find($someId)->marketProducts;
问题是$colletion 不是查询生成器或 Eloquent 的实例,所以我不能使用->paginate($num)。使用hasManyThrough时是否可以使用默认分页功能,还是需要手动构建查询才能使用分页?
【问题讨论】:
-
你试过
$collection = Brand::find($someId)->marketProducts(); -
不错。
->marketProducts()返回Illuminate\Database\Eloquent\Relations\HasManyThrough,可以使用分页!我还在官方文档中看到了提到这一点的部分。随意写一个答案。谢谢! -
知道我是否可以从中获取“from”和“to”?文档显示了分页器 JSON 有它,但我不认为它是辅助方法之一。
-
对不起,我不明白。我有点忘记了 laravel,如果你能更具体的话:)
-
所以,如果我在结果的第 2 页,每页显示 5 个结果,我将显示记录 6 到 10。“From”为 6,“To”为 10在这里。
标签: php pagination laravel-5.1 has-many-through