2010-10-21 32 views
0

如果我有一個文本輸入名稱「電子郵件」,如果我設置:消息=>「您的電子郵件是一種錯誤的」驗證錯誤消息將有類似我如何定製rails3驗證錯誤?

的電子郵件您的電子郵件是一種錯誤的。「

我想知道是否有任何方法從rails3中的驗證錯誤輸出中刪除原始輸入名稱(在上面的情況下,它的電子郵件)。

回答

1

有可能是一個更好的方法來做到這一點,請讓我知道它是什麼,但這將工作。

class User < ActiveRecord::Base 
    validate do |user| 
    user.errors.add_to_base("Your email is of the wrong kind") unless user.email =~ email_regexp 
    end 
end 

的其他黑客十歲上下的方式做,這是定義一個定製的翻譯

# en.yml 
en: 
    activerecord: 
    attributes: 
     user: 
     email: "Your email" 

:message => 'is wrong kind'結合這一點,它應該工作。 (雖然它不是真正有效的英語;))

0

我想你可以定義你的郵件默認格式爲您YAML文件中是這樣的:

EN: #活動模型 錯誤: #中使用的默認格式在完整的錯誤信息。 格式:「%{attribute}%{message}」

只刪除格式的屬性部分。