Rails 3对存储属性的验证

时间:2012-04-06 09:45:39

标签: ruby-on-rails-3 validation activerecord

好吧,我们都知道上一个ActiveRecord::Store课程的新功能。

但我们如何安全地进行验证?这是一个例子:

class User
  has_many :posts
end

class Post
  belongs_to :user
  store :composed_attribute, accessors: [:attribute_1, :attribute_2]

  validates :attribute_1, presence: true # This works great!
  validates :attribute_2, presence: true,  uniqueness: {scope: :user_id, message: "must be unique."} # This fails!
end

第一次验证效果很好,但第二次验证失败并且不可更正 undefined method 'text?' for nil:NilClass

在数据库中,所有内容都以yaml格式存储。但是我们无法确定订单,那么哪种方式是执行此类验证的最佳方式?

声明

我知道,在这种情况下,将属性存储在一起并不是一个好主意,主要是出于性能问题,但无论如何这都是一个有趣的话题。

0 个答案:

没有答案