gpt4 book ai didi

ruby-on-rails - Ruby on Rails :How to translate options of select tag?

转载 作者:行者123 更新时间:2023-12-03 16:03:53 25 4
gpt4 key购买 nike

我在一个编辑用户表单中创建了一个选择元素:

t.select :identification_type, User.identification_type_hash

哈希是
{ :type_1 => 1, :type_2 => 2, ... }

我需要本地化类型名称。但是我没有找到将翻译添加到语言环境目录中的 yml 文件的正确方法。

我试过了
en_US:
type_1: Translationg of type 1
type_2: Translationg of type 1

active_record:
attributes:
identification_type:
type_1: Translationg of type 1
type_2: Translationg of type 1

identification_type:
type_1: Translationg of type 1
type_2: Translationg of type 1

上面没有人工作。 (虽然其他东西的翻译仍然有效。)
而且我在 ROR 文档中找不到解决方案。

那么本地化这些哈希值的正确方法是什么?

最佳答案

您需要自己翻译 key ,但这很容易。假设您有以下语言环境文件:

en_US:
identification_type:
type_1: Translationg of type 1
type_2: Translationg of type 1

那么你的 select标签可能如下所示:
t.select(:identification_type, 
User.identification_type_hash.map { |k,v| [t(k, scope: :identification_type), v] })

当然,这对于 View 来说看起来相当复杂,因此您可以将此代码移动到 View 助手中:
module ApplicationHelper
def user_identification_type_options
User.identification_type_hash.map do |k,v|
[t(k, scope: :identification_type), v]
end
end
end

所以你的 select标签看起来像这样:
t.select(:identification_type, user_identification_type_options)

关于ruby-on-rails - Ruby on Rails :How to translate options of select tag?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25752458/

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