Rails中的自定义验证方法,它接收整个字段的哈希值

时间:2014-12-18 10:20:15

标签: ruby-on-rails validation

我需要一个接收所有设置字段的自定义验证方法。我需要这个,因为我在表单中为has_many :through关系动态添加多个字段,我需要确保没有输入任何重复值。

我知道常规Rails验证方法在单个字段上运行,但我找不到任何处理所有字段的内容。

1 个答案:

答案 0 :(得分:0)

docs,你可以这样做:

class Person < ActiveRecord::Base
  validates_each :name, :surname, :any_other_attributes, do |record, attr, value|
    ...
    # e.g. record.errors.add(attr, 'must start with upper case') if value =~ /\A[a-z]/
  end
end