ruby - 如何获取键/值对的哈希值并使用它设置 ActiveRecord 属性

标签 ruby activerecord ruby-on-rails-4

我有一个通过远程 Web API 检索的 Ruby 哈希。我有一个 ActiveRecord 模型,它具有与散列中的键相同的属性。 Ruby on Rails 4 是否有一种简单的方法可以将散列中的键/值对分配给模型实例?是否可以忽略不存在的键?

最佳答案

super 简单!

更新属性而不保存:

model.attributes = your_hash
# in spite of resembling an assignemnt, it just sets the given attributes

更新属性保存:

model.update_attributes(your_hash)
# if it fails because of validation, the attributes are update in your object
# but not in the database

更新属性,保存,如果无法保存则引发

model.update_attributes!(your_hash)

关于ruby - 如何获取键/值对的哈希值并使用它设置 ActiveRecord 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20462768/

相关文章:

ruby-on-rails-3 - 如何使用Arel制作一个不会影响Rails 3中查询的ActiveRecord范围?

ruby-on-rails - Rails 将参数/参数传递给 ActiveRecord 回调函数

ruby-on-rails - #<User::ActiveRecord_Relation:0x007fc328248ef0> 的未定义方法 `avatar'

ruby-on-rails - 为什么 ActionDispatch::Routing::RouteSet 需要这么长时间

ruby-on-rails - 尝试在 Rails 中调用我的服务时获取 "uninitialized constant"

html - 表单操作下载 ruby​​ 脚本而不是运行它

Ruby 无法将 Hash 转换为 Int

ruby-on-rails - 使用 ActiveRecord 获取组内最近记录的平均值

ruby-on-rails - Ruby:使用字符串访问成员变量(反射)

javascript - 如何使用 CryptoJS AES 解密消息。我有一个有效的 Ruby 示例