【发布时间】:2023-02-03 01:18:50
【问题描述】:
您好,我想使用 laravel 更新另一个表上的单个值。这是我到目前为止所做的代码,但似乎不起作用:
$amount = Product::findorFail($request->products[$i]);
$total_value = $request->amount[$i] + $amount->amount;
$amount->update(['amount', $total_value]);
dd($total_value);
dd 我看到结果是正确的,但更新功能不正确,我试图做的查询是
update table set amount=x where id=y
【问题讨论】:
-
将其更改为 $amount->update(['amount'=>$total_value]);
-
或者也
$amount->amount = $total_amount; $amount->save() ; -
@StewieSWS 是的,但我必须使用
update功能 -
Eloquent 还有一个
increment函数;$product->increment('amount', '100')将为amount的当前值增加 100。如果多个用户同时在同一个$product上工作,这样做的好处是安全。
标签: laravel