我需要设置一个条件,如果my_counter
等于0
,1
或2
,则我的验证标记设置为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
答案 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