[英]Laravel Blade Nested BelongsTo Relationship access
我雄辩的Laravel中有一个嵌套的BelongsTo关系,当我尝试成功访问它的一个级别时,但是当我尝试访问它的两个级别时,则是如此。 其获取错误“试图获取非对象的属性”
这是我的结构模型
OrderProduct.php
public function product()
{
return $this->belongsTo('App\Models\Product');
}
Product.php
public function domain()
{
return $this->belongsTo('App\Models\Domain');
}
我想做的是雄辩地从order_product获取域信息,而我在刀片服务器上做到了,但是却收到错误消息“试图获取非对象的属性”
$order_product = OrderProduct::first();
$domain_name = $order_product->product->domain->name;
但是当我精通产品并尝试访问域名时,它就成功了
$product = Product::first();
$domain_name = $product->domain->name;
我应该怎么做才能通过product-> domain关系从order_product访问域关系?
谢谢
当您从没有域的产品中获取域时,就会发生此问题。 您可以使用laravel可选功能:
$orderProduct = OrderProduct::with('product.domain')->first();
$domain_name = optional($orderProduct->product->domain)->name;
注意:我也使用紧急负载来减少查询。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.