gpt4 book ai didi

ruby-on-rails - Active Record - 查找和更新(仅当对象存在时)

转载 作者:行者123 更新时间:2023-12-03 16:44:36 28 4
gpt4 key购买 nike

我有一个记录的 ID,该记录可能存在于数据库中,也可能不存在。

我想要做的是仅在数据库中记录的属性存在时才更新它,否则忽略它。

现在我知道我可以做类似的事情:

model = Model.find_by_id(id)
if model
model.update_attribute(something: something)
end

但我想知道是否有更好的东西不涉及 2 个查询?

最佳答案

Model.update_all({:something => 'something'}, {:id => id})

例如:
User.update_all({:first_name => 's'}, {:id => 1000})

将产生查询
UPDATE "users" SET "first_name" = 's' WHERE "users"."id" = 1000

关于ruby-on-rails - Active Record - 查找和更新(仅当对象存在时),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21121486/

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