'validate_inclusion_of'无效

时间:2012-10-04 18:13:58

标签: ruby-on-rails ruby

我需要设置一个条件,如果my_counter等于012,则我的验证标记设置为true ,否则将我的验证标志设置为false

但我的validate_inclusion_of电话无效:

if User.find_by_email(@email)
      user = User.find_by_email(@email)
      user.my_count += 1
      user.save

      # Here is where it fails
      if validates_inclusion_of :my_count, :in => [0,1,2]
        @my_flag = true
      else
        @my_flag = false
      end

1 个答案:

答案 0 :(得分:3)

这不是您在模型上设置验证的方式。我建议你这样做:

@my_flag = [0,1,2].include? user.my_count

修改:让我指出您发现了User两次导致2次查询。考虑这样做:

if user = User.find_by_email(@email)
  user.my_count += 1
  user.save
  @my_flag = [0,1,2].include? user.my_count
end