我有一个User
模型。我希望能够在一个函数中为用户设置任意属性。
> User["some_new_attribute"] = "test"
# Error
ActiveModel::MissingAttributeError: can't write unknown attribute `some_new_attribute'
如何将名为some_new_attribute
的属性分配给我的用户记录?我不想在DB中为它添加一个列,它只是一个函数中使用的属性。
答案 0 :(得分:3)
您可以使用attr_accessors
执行此操作。请注意,此类字段不会通过ActiveRecord保留在数据库中。
Class User
attr_accessor :some_new_attribute
end