gpt4 book ai didi

ruby-on-rails - Rails 虚拟模型中的属性本地化

转载 作者:行者123 更新时间:2023-12-04 07:29:22 26 4
gpt4 key购买 nike

我在 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

关于ruby-on-rails - Rails 虚拟模型中的属性本地化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18886408/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com