2014-02-28 213 views
0

在rails 3.2.16應用程序表單提交中,錯誤消息不會流向視圖。基於以下模型定義i18n自定義驗證錯誤處理

validate :not_overlap 

    def not_overlap 
    errors.add(:start, 'message') if overlaps? 
    end 

我一直無法插入轉換代碼助手

以下是區域文件:

activerecord: 
    models: 
     optionrate: "Options" 
    attributes: 
     optionrate: 
     start: "Start" 
     end: "End" 
    errors: 
     models: 
     optionrate: 
      attributes: 
      start: 
       not_overlap: "Dates overlap existing options." 
      end: 
       not_overlap: "Dates overlap existing options" 

我也是不確定的

<% @optionrate.errors.full_messages.each do |msg| %><%= msg %> 

命令和它的國際化...

...這有點讓3只運行

  1. 後如何調用翻譯消息
  2. 如何正確編纂它在區域文件
  3. 怎麼也處理的通用MSG i18n 我假設有一個層次結構來處理這些問題。綜合起來,它是一個幾何增長混亂的替代品。

我在做什麼錯?

回答

1

我認爲errors.add的第二個參數需要是您嘗試添加的錯誤消息的符號。因此:

errors.add(:start, :not_overlap) 

雖然您現在可能已經修復了這個問題!

+0

對;它可能是字符串或符號,因爲它沒有修復它!我還沒有修復它!謝謝。 – Jerome