Php 如何在Laravel中获得采集结果

Php 如何在Laravel中获得采集结果,php,laravel,eager-loading,Php,Laravel,Eager Loading,所以我正在和拉威尔一起做一个餐馆 我正在设法买到买主买的所有产品。问题是,买家和他们的产品是通过交易表关联的。现在,下面的代码我得到了所需的结果,因为我使用Laravel获得了他们产品的交易,如下所示: /** * Display a listing of the resource. * * @return \Illuminate\Http\Response */ public function index(Buyer $buyer) { $products = $b

所以我正在和拉威尔一起做一个餐馆

我正在设法买到买主买的所有产品。问题是,买家和他们的产品是通过交易表关联的。现在,下面的代码我得到了所需的结果,因为我使用Laravel获得了他们产品的交易,如下所示:

     /**
 * Display a listing of the resource.
 *
 * @return \Illuminate\Http\Response
 */
public function index(Buyer $buyer)
{

    $products = $buyer->transactions()->with('product')->get()->pluck('products');



    return $this->showAll($products);
}
这里的问题是,我有一个trait,它在我的基本ApiController上被调用,trait有一个方法
showAll()
来返回/显示请求的
json
响应。
showAll()
方法要求返回一个集合。而我正在发送集合的属性

我的问题:

作为集合而不是属性加载后,如何取回产品?

您可以使用
collect()
helper函数将
$products
数组转换为集合


参考文档的更多内容

实际上,我通过将trait上的名称空间从elount/Collection更改为Helper/Collection来实现这一点,但我正在研究这两个名称空间之间的差异。收集帮助函数的hmm基本上将数组转换为集合?我试试看。