ker*_*lin 34 ruby serialization model ruby-on-rails object
我正在寻找有关序列化数据库中对象的一般指导.
sev*_*rin 55
在计算机科学中,在数据存储和传输的上下文中,序列化是将数据结构或对象转换为比特序列的过程,以便它可以存储在文件,存储缓冲器中或通过网络连接链路传输.稍后在相同或另一个计算机环境中"复活".(见http://en.wikipedia.org/wiki/Serialization)
因此,序列化对象(在ActiveRecord的上下文中)是对象的文本/字符串表示(使用YAML编码).序列化后,您可以将(几乎)任何Ruby对象保存在单个数据库字段中.
如果您需要将某些复杂的对象保存在数据库中,并且不需要根据序列化属性的内容检索记录,则可以使用序列化.我使用它们来存储webapp用户的首选项:首选项基本上是我想要保存在单个数据库字段中的哈希值.
3./4./5.使用ActiveRecord :: Base.serialize作为Marc-AndréLafortune建议:
class User < ActiveRecord::Base
serialize :preferences
end
u = User.new
u.preferences = {:show_tooltips => true, :use_extended_menu => false, ...}
u.save
# ...
u = User.find(23)
u.preferences # => {:show_tooltips => true, :use_extended_menu => false, ...}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
24917 次 |
| 最近记录: |