【问题标题】:Rails validates_presence_of with multiple fieldsRails validates_presence_of 具有多个字段
【发布时间】:2017-11-26 13:20:01
【问题描述】:

我有多个字段应该使用存在选项进行验证。 我正在尝试使用validates_presence_of 而不是validates

这是我的代码

validates_presence_of : first_name, last_name, birthday, sex,home, message: "This field shouldn't be blank"

但我想在消息中显示字段名称。如何在消息中显示字段名称?

【问题讨论】:

  • 您正在使用 message大写 M。是不是笔误?
  • 抱歉,Pavan - 有点错别字。无论如何,它应该是'm'。

标签: ruby-on-rails activerecord


【解决方案1】:

如果您删除消息哈希,只需使用

validates_presence_of :first_name, :last_name, :birthday, :sex, :home

当您保存对象时,这将显示一条消息,其中包含所有空白的字段名称。

【讨论】:

  • 谢谢。我试过用,但它不起作用。它只显示“不能为空”作为错误消息,没有字段名称。不幸的是,它不起作用。
  • 奇怪,它对我有用:/。您能否提供您正在使用的整个 Customer 模型和 rails 版本
  • 您是否愿意向我提供您在字段为空时收到的错误消息?
  • validates_presence_of :name, :phone_no, :email #raises ActiveRecord::RecordInvalid: Validation failed: Name can't be blank, Phone no can't be blank, Email can't be blank
  • 更好地单独验证以获得更好的错误消息,例如:validates :first_name, presence: true
猜你喜欢
  • 1970-01-01
  • 2011-05-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多