如果本地化文件查找失败,我可以使用默认的I18n配置进行查找吗?默认I18n ActiveRecord验证翻译
作为滑轨的一部分,http://guides.rubyonrails.org/i18n.html#how-i18n-in-ruby-on-rails-works
作为该溶液的一部分,在Rails框架每静态字符串 - 例如Active Record验证消息,时间和日期格式已经国际化,所以Rails应用程序的本地化意味着“超越”这些默认值。
因此,当我添加我自己的本地化文件时,我失去了ActiveRecord的默认导轨错误文本。 例如模型
validates_length_of :name, :maximum => 50
当失败内发出下面的代码,我得到
translation missing: en-gb, activerecord, errors, models, model_name, attributes, name, too_long
两个可能的解决方法:
添加
:message
每一位validates_*
方法?例如validates_length_of :name, :maximum => 50, :message => "is too long (maximum is %{count} characters)"
这样做的问题是有很多调用,添加新代码的人必须记得添加文本。 (我不认为变量替换在这里工作!)
添加默认设置在每个区域设置的配置文件rails uses,如
errors: messages: less_than: must be less than %{count}
这里的问题是,同样的文字有被添加到每个区域文件中(因为我对翻译这些文件不感兴趣),但这并不是什么大事,但似乎很奇怪。
如果有的话,建议哪些路线?任何其他想法或建议?
是否没有I18n使用的默认/后备文件,即如果在语言环境文件中找不到查找?
(使用Rails 2.3.5)