`validates`错误消息的位置

时间:2012-02-08 08:35:58

标签: ruby-on-rails ruby-on-rails-3.2

我最近碰到了我试图执行rake db:seed并让它失败的问题。经过一段时间的搜索查看日志并尝试确定问题的原因后,我意识到我的种子数据很糟糕,我的模型在以下验证中被拒绝了:

validates :image_url, allow_blank: true, format: {¬
   with:    %r{\.(gif|jpg|png)$}i,¬
   message: 'must be a URL for GIF, JPG or PNG image.'¬
}¬

我只能通过复制和粘贴我的种子数据并尝试通过相应视图输入它来识别这一点,我收到了错误消息must be a URL for GIF, JPG or PNG image.

执行validates时发送的rake db:seed错误消息在哪里?

1 个答案:

答案 0 :(得分:1)

您正在寻找错误消息:

# Create a new object
@model = Model.new(attributes)

# Validate it
@model.valid?

# Or save it (this calls #valid?)
@model.save

# Put error messages.
@model.errors.full_messages.each do |message|
  puts message
end

供参考:http://ariejan.net/2010/12/15/why-did-errormessagesfor-disappear-from-rails-3