Laravel雄辩的关系一对多

时间:2020-05-22 13:15:25

标签: laravel eloquent one-to-many

我正在处理三个表:产品,交货和库存。我希望交付产品时,库存表中的数量增加。因此,在交付表的控制器中,我编写了以下代码:

$produit = Produit::find($delivery['produit_id']); 
$quantite = $produit->stock->quantite;
$quantite += $delivery['quantite'];
$quantite->save();

但是当我交货时,库存表中的数量没有变化。

1 个答案:

答案 0 :(得分:0)

PHP中的简单类型不是通过引用获得的,因此您必须将新值分配给Stock对象。这是假设quantiteStock模型上的整数,由于您在quantite上调用->save(),因此在您提供的代码中并不能完全清楚。记住要保存Stock模型而不是quantite

$stock = $produit->stock;
$stock->quantite = $stock->quantite + $delivery['quantite']
$stock->save();