使用rails验证验证数学方程式

时间:2009-05-20 00:06:16

标签: ruby-on-rails

我希望我网站上的注册表单有一个字段,它取一个数学公式的总和,并使用rails验证来验证它。什么是最好的方法呢?

什么是6 + 9? [8]

错误消息:您输入了错误的号码

1 个答案:

答案 0 :(得分:1)

覆盖模型类中的validate方法。请记住,为new操作创建的模型对象与为create操作创建的模型对象不同,因此您需要在表单中的某处保存随机种子或数学表达式这样你就可以在验证过程中重新创建它。

然后,有些东西:

def validate
  unless math_equation_answered?
    errors.add("math_answer", "is incorrect")
  end
end

math_equation_answered?的实施取决于您,math_answer应更改为您用于用户答案的​​任何模型字段。