所以我做了很多计算,最后我的费率需要保存到表格中的现有行。
我拥有的数组将类似于以下内容:
[
<model_id> => [
'rate' => <some rate>
]
<model_id_2> => [
'rate' => <some other rate>
]
.....
]
现在显然我可以通过这个数组进行操作,并对数组中的每个项目进行更新,但最终可能会有100个更新调用。有没有办法(通过laravel的雄辩或甚至是原始的SQL查询)通过一次调用来完成所有这些更新?
答案 0 :(得分:5)
如果您担心请求花费的时间,您可以通过触发事件然后排队将保存模型的侦听器/作业来处理此事件,以便可以异步处理它。例如,转到Laravel Docs for Queues
只要我知道你无法在Laravel上更新多行。
答案 1 :(得分:4)
您可以尝试使用Eloquent update()
来更新多个记录。这是我用来将多个记录更新到我的表中的一些代码。
\App\Notification::where('to_id', '=', 0)
->update(['is_read' => 1]);