Laravel多对多,如何在透视表内插入/获取数据?



在laravel 9中我实现了多对多关系。

我有三个表,shop,productproduct_shop表。

每个商店可以有每个单一产品的number。并且每个产品可以在多个商店中存在。

问题是我如何在product_shop表中插入/获取产品的number?

我必须使用什么关系语法?

product_shop:

$table->unsignedInteger('product_id');
$table->unsignedInteger('shop_id');
$table->unsignedInteger('number');
$table->foreign('product_id')->references('id')->on('products');
$table->foreign('shop_id')->references('id')->on('shops');

感谢

您可以使用pivot。例如,

$product = $shop->products()->withPivot(['number'])->first();
$number = $product->pivot->number;

如果你想插入

$shop->products()->attach([$product_id => ['number' => $your_value]]);

相关内容

  • 没有找到相关文章

最新更新