ruby-on-rails – Rails虚拟模型中属性的本地化
发布时间:2020-12-17 02:39:14 所属栏目:百科 来源:网络整理
导读:我在Rails 3中创建了一个虚拟(非持久)模型(见下文) 我现在需要将翻译应用于模型,但标准翻译位置似乎不起作用.例如 en: activerecord: attributes: media_upload: title: "My Title" 我知道我可以使用可选的字符串参数将其直接应用于标签,例如. f.label:titl
我在Rails 3中创建了一个虚拟(非持久)模型(见下文)
我现在需要将翻译应用于模型,但标准翻译位置似乎不起作用.例如 en: activerecord: attributes: media_upload: title: "My Title" 我知道我可以使用可选的字符串参数将其直接应用于标签,例如. f.label:title,t(‘activerecord.attributes.media_upload’)但不适用于验证产生的错误消息.同样,我可以按照Localise nested virtual attribute in Rails中的建议为标签助手的翻译文件添加一个键,但这也无法用于验证. helpers: label: media_upload: title: "My Title" 除了重新定义所有相关的验证消息之外,还有其他方法可以在非持久性模型中进行属性本地化吗? 样本模型如下所示, class MediaUpload include ActiveModel::Validations include ActiveModel::Conversion extend ActiveModel::Naming attr_accessor :media_file,:title validates_presence_of :media_file validates_presence_of :title def initialize(attributes = {}) unless attributes.nil? attributes.each do |name,value| send("#{name}=",value) end end end def persisted? false end end 解决方法
你需要写这样的:
en: activemodel: attributes: media_upload: title: "My Title" 不是activerecord用activemodel替换它 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |