【问题标题】:Location of `validates` error messages`validates` 错误消息的位置
【发布时间】:2012-02-08 08:35:57
【问题描述】:

我最近遇到了我试图执行 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.

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

【问题讨论】:

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


    【解决方案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

    【讨论】:

    • 如果没有这个,错误消息是如何输出到视图的?我不想每次创建模型时都包含这个,有没有办法简单地将所有validates 错误消息输出到开发人员日志?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-01
    • 2013-09-23
    • 2013-06-18
    • 1970-01-01
    相关资源
    最近更新 更多