我有一个注册表单,用户必须输入他的凭据以及一个名为促销代码的文本字段。因此,只有当促销代码的值为“akpoi”时才能提交表单。因此,用户必须输入此字符串以进行表单提交,否则它将向用户显示错误消息,因为“应在促销代码字段中输入akpoi”。如何在rails模型验证中检查这个?
答案 0 :(得分:0)
这应该在控制器端进行检查
if params[:field_name] == "akpoi"
else
end
如果您坚持在模型中执行此操作,请执行以下操作
after_validation :check_field_value
def check_field_value
self.errors.add(:comment, "Add Your Error Here") if field_name != "akpoi"
end
答案 1 :(得分:0)
我想你会想要使用inclusion
:
validates :promo_code, :presence => true,:inclusion => { :in => "akpoi" }