Bla*_*man 2 ruby ruby-on-rails
我想做以下事情.
我希望我的模型有一个存储哈希值的列,即名称/值对.当我在我的模型中加载一条记录时,我不希望它解析以从数据库中取消分配值,除非我访问它,即延迟初始化.
这是b/c只有db中我的行的几个百分比将具有哈希值,并且很少会访问它们.
这可能吗?
示例用法:
user.properties["age"] = 12
user.properties["height"] = xxx
user.save
Run Code Online (Sandbox Code Playgroud)
我不确定如何将它保存到数据库中,也许是以json格式保存?
是的,您可以序列化数据.
摘自http://api.rubyonrails.org/classes/ActiveRecord/Base.html:
class User < ActiveRecord::Base
serialize :preferences
end
user = User.create(:preferences => { "background" => "black", "display" => large })
User.find(user.id).preferences # => { "background" => "black", "display" => large }
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1768 次 |
| 最近记录: |