ruby - 事件记录查找和更新

标签 ruby activerecord

ActiveRecord::Base 上是否有一种方法 find_and_update 方法基本上可以通过它的 id 找到记录并更新给定的键?这将避免必须查询然后更新导致 2 个查询而不是 1 个。

谢谢

最佳答案

active record中有一个update方法,通过id查找,更新属性。但这将进行两个 sql 查询。

update(id, attributes)

例如

 Post.update(params[:id], {:title => 'Hello world'})

如果你不想验证发生,你可以使用

Post.update_all({:title => 'hello1'}, {:id => params[:id]})

这只会进行一个sql查询

关于ruby - 事件记录查找和更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15964716/

相关文章:

ruby-on-rails - Rails exec_query 绑定(bind)被忽略

mysql - 包含 Rails 3 上的外部左连接

ruby - Ruby lookbehind 断言 (1.9/2.0) 中是否存在错误?

ruby - 是否可以在基于非 ActiveRecord 的模型(比如 activeModel 或 Mongoid 等)上使用 ActiveAdmin?

Ruby自编源码

ruby-on-rails - 如何使用带有 Active Record 查询接口(interface)的链接表

ruby-on-rails - 我可以让 validates_uniqueness_of 在 rails 中默默地失败吗?

ruby-on-rails - 如何在ruby中的特殊字符前后添加空格?

windows - 鞋子网址在 Ubuntu 中不起作用?

ruby-on-rails - Rails 2.3 session