Rails:在对象验证中,属性为零

时间:2012-09-12 19:51:18

标签: ruby-on-rails-3

我有3个模特:房子,房客和水管工。租户属于房子和房子有一个房客。我想使用需要管道工数据的自定义EachValidator。为此,在我的租户模型中:

attr_accessor :plumber_limit

在控制器中,我已将plumber_limit设置为:

house.tenant.plumber_limit = plumber.value

当租户验证触发时,tenant.plumber_limit值为nil,因此失败。我尝试为plumber_limit添加公开定义。我尝试添加attr_accessible :plumber_limit。我尝试过不同的符号。这是否失败,因为tenant正在子环境中使用?如果是这样,我如何将plumber_limit纳入tenant的验证?

根据要求,这是验证码:

class UniquePlumberAssignment < ActiveModel::EachValidator
  def validate_each(record, attribute, value)
    record.property.limit(record.plumber_limit).each |p|
      ...
    end
  end
end

0 个答案:

没有答案