【发布时间】:2020-07-31 18:20:27
【问题描述】:
我在 laravel 中有一个一对一的关系,如下所示:
public function Category()
{
return $this->belongsTo(Categories::class);
}
并运行这个雄辩的查询:
Product::with('category')->first();
这个查询返回:
{
"name": "Green Book",
"category": {
"id": 1,
"name": "Book"
}
}
但我去了这个数据:
{
"name": "Green Book",
"category": "Book"
}
是否可以不使用循环来做到这一点?
【问题讨论】:
-
你可以试试
Product::with('category:name')->first();。它可能会失败,因为它需要 id 来建立关系,或者它可能工作,但仍然是一个带有名称的数组。在这种情况下,您可以映射数据。如果您为您的问题提供更多背景信息,也许可以提供更好的解决方案。 -
Categories::class不应该是复数。关系方法有问题。
标签: laravel eloquent relationship