0

我需要设置一个条件,如果my_counter等于或0,则我的验证标志设置为,否则将我的验证标志设置为。12truefalse

但我的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
4

1 回答 1

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
于 2012-10-04T18:16:05.687 回答