我有桌子:Orders
,Products
,Products_images
。
我需要获得ll命令,为此我做了:
$orders = Order::with("products")->where("user_id", Auth::guard('api')->user()->id)->orderBy('id')->get();
with("products")
在模型Order
public function products()
{
return $this->hasOne("App\Product", "id", "product_id");
}
所以,我连接了两张桌子。此外,我还需要在此查询中使用表Products
连接表Products_images
。
我该怎么做?
答案 0 :(得分:1)
将product_images功能添加到产品型号
public function product_images() { return $this->hasMany("App\ProductImage");}
修改上面一行的App \ ProductImage以反映您的表的模型。然后,您可以通过执行以下操作访问属于您的产品的所有产品图像记录:
$orders = Order::with("products.product_images")->where("user_id", Auth::guard('api')->user()->id)->orderBy('id')->get();
在此链接上查看嵌套的预先加载:https://laravel.com/docs/5.3/eloquent-relationships#eager-loading