答案 0 :(得分:7)
Active Record can serialize any object in text columns using YAML。为此,您必须通过调用类方法serialize来指定它。这使得存储数组,散列和其他不可映射的对象成为可能,而无需进行任何额外的工作。
class User < ActiveRecord::Base
serialize :preferences
end
user = User.create(preferences: {background: "black", display: "large"})
User.find(user.id).preferences
# => {background: "black", display: "large"}
答案 1 :(得分:0)
Mori的回答是正确的,但如果模型中的数据类型确实是字符串,则可能不合适。建议你改用文字。