Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Laravel 5 Laravel Resource在不为hasOne&;归属关系_Laravel 5 - Fatal编程技术网

Laravel 5 Laravel Resource在不为hasOne&;归属关系

Laravel 5 Laravel Resource在不为hasOne&;归属关系,laravel-5,Laravel 5,我有一个订单模块,其中客户关系为, 公共功能客户(){ } 我获取订单详细信息的查询如下:, $orderResponse=Order::find(1) 我的订单资源包括:, “客户”=>新客户资源($this->whenLoaded('customer')) 所以,预期的结果是我应该在不使用customer对象的情况下获取所有客户详细信息,因为我在获取订单数据时没有加载它。 但这是回应。 加载集合时,它工作正常,但不适用于一个关系。试试这个 $orderResponse = Order::fi

我有一个订单模块,其中客户关系为, 公共功能客户(){

}

我获取订单详细信息的查询如下:, $orderResponse=Order::find(1)

我的订单资源包括:, “客户”=>新客户资源($this->whenLoaded('customer'))

所以,预期的结果是我应该在不使用customer对象的情况下获取所有客户详细信息,因为我在获取订单数据时没有加载它。 但这是回应。 加载集合时,它工作正常,但不适用于一个关系。

试试这个

$orderResponse = Order::find(1); 
$orderResponse->customer()->id; //Customer Order Relationship

不要在加载时使用尝试在订单资源中的hasOne关系中使用when

'customer' => $this->when($this->customer, new CustomerResource($this->customer))

如果您的客户关系不是空的,它将加载您的CustomerResource。

您是否试图获取有订单的客户?比如$orderResponse=Order::find(1)$orderResponse->customer()->id?@ViperTecPro收到了。事实上,这是唯一的问题。我使用$order->customer->name;在相同的资源中,因此整个客户资源加载。谢谢你的问题解决了吗?@ViperTecPro是的。你能检查我的答案吗?如果它真的解决了你的问题。
'customer' => $this->when($this->customer, new CustomerResource($this->customer))