gpt4 book ai didi

laravel - 在 Laravel 中连接两个表

转载 作者:行者123 更新时间:2023-12-02 20:42:22 25 4
gpt4 key购买 nike

我有两个如下表。

Product TABLE

id name count
1 book 3
2 shoes 4
3 pen 3
Category TABLE

id category_id product_id
1 4 1
2 5 1
3 1 2
4 3 3

当我像 ... where Product.id = 1 那样查询时,我想获得结果。

{
"id" : 1,
"name" : "book",
"count" : 3,
"categories" : [
4,
5
],
}

以下代码显示了模型及其关系。

模型中的产品

class Product extends Model
{
protected $fillable = [
'name',
'count',
];

public function categories()
{
return $this->hasMany(Category::class);
}
}

Controller

 ...
$product = Product::with('categories')->get();
...

但是结果是这样的。

{
"id" : 1,
"name" : "book",
"count" : 3,
"categories" : [
{
"category_id": 4
},
{
"category_id": 5
}
],
}

我认为我应该使用两个表之间的关系。

最佳答案

你可以这样使用

$products = Product::with('categories')->get();
$products->transform(function ($item) {
$item->categories = $item->categories->pluck('category_id')->all();
});

关于laravel - 在 Laravel 中连接两个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59114919/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com