rails验证自定义错误消息被忽略/未显示..为什么?

时间:2011-12-14 19:41:53

标签: ruby-on-rails ruby-on-rails-3 validation ruby-on-rails-3.1

我的自定义唯一性验证自定义消息不会显示。

我包含了我认为的相关代码,但如果您认为还有其他一些内容需要查看,请告诉我。

class Beverage < ActiveRecord::Base
  has_many :grapeages, dependent: :destroy
  has_many :wine_varietals, through: :grapeages
  validates_associated :grapeages
end

class Grapeage < ActiveRecord::Base
  belongs_to :beverage
  belongs_to :wine_varietal

  # Neither of these seem to work:
  #validates :wine_varietal_id, uniqueness: {scope: :beverage_id, message: 'xxx'}
  validates_uniqueness_of :wine_varietal_id, scope: :beverage_id, message: 'xxx'
end

而不是'xxx',显示的错误消息是:

Grapeages is invalid

1 个答案:

答案 0 :(得分:2)

我在搜索validates_associated之后找到了一个解决方案..我的搜索引导我3668018,我跟进了first post,这提供了一个很好的修复目前的事实{ {1}}使用 [型号]无效覆盖实际的错误消息。作为奖励,相同的链接显示了一种删除重复错误消息的好方法(请注意,该类必须更新为validates_associated)。

ActiveModel::Errors

不要忘记重启服务器。