Ruby on rails 3.1 验证rails模型中的硬编码值

Ruby on rails 3.1 验证rails模型中的硬编码值,ruby-on-rails-3.1,Ruby On Rails 3.1,我有一个注册表单,用户必须输入他的凭证和一个名为“促销代码”的文本字段。因此,只有当促销代码的值为“akpoi”时,才能提交表单。因此,用户必须输入此字符串以提交表单,否则它将向用户显示错误消息“应在促销代码字段中输入akpoi”。如何在rails模型验证中检查此项???应在控制器端检查此项 if params[:field_name] == "akpoi" else end 如果你坚持按模式做的话,请按照以下步骤做 after_validation :check_field_value

我有一个注册表单,用户必须输入他的凭证和一个名为“促销代码”的文本字段。因此,只有当促销代码的值为“akpoi”时,才能提交表单。因此,用户必须输入此字符串以提交表单,否则它将向用户显示错误消息“应在促销代码字段中输入akpoi”。如何在rails模型验证中检查此项???

应在控制器端检查此项

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

我想您应该使用
包含

validates :promo_code, :presence => true,:inclusion => { :in => "akpoi" }