如何在不以字段名称为前缀的字段名称上添加自定义验证消息?

时间:2019-06-24 18:26:36

标签: ruby-on-rails ruby-on-rails-4

我正在使用

validates_presence_of :name, :message => "promo code required"

它给出了

Name promo code required

我只想要

promo code required

3 个答案:

答案 0 :(得分:1)

您可以编写自定义验证,然后将错误消息整体添加到记录中,而不是将特定属性添加如下:

validate :name_is_present

private

# Making this private is optional, but recommended
def name_is_present
  errors.add(:base, "Promo code required") if name.blank?
end

有关更多详细信息,请参见Ruby guides here

中的说明。

答案 1 :(得分:0)

您可以为此创建自定义验证方法。

data.loc[(data['Day_Perc_Change']>0.5) & (data['Day_Perc_Change']<1),'Trend'] = 'Slight positive' 

答案 2 :(得分:0)

您还可以使用为每个属性定义“人性化”名称,如下所示:

  def self.human_attribute_name(attribute, options={})
    case attribute
    when :name, "name"
       ""
    else
     super
    end
  end