【发布时间】:2015-10-28 09:21:15
【问题描述】:
我有一个问题,我无法通过 Rails 中的国际化来解决。我是 Rails 的新手。
我在 room.rb 中定义了一组类别:
CATEGORY_COLLECTION = {
I18n.t('meeting_rooms') => "sala-de-reuniones",
"Aula de formación" => "aula-de-formacion",
"Sala para entrevistas" => "sala-para-entrevistas",
"Espacio para Eventos de Empresa" => "corporate-events",
"Showroom" => "showroom",
"Despacho" => "office",
"Sala multiusos" => "sala-multiusos",
"Puesto de Coworking" => "puesto-de-trabajo",
"Sala para conferencias" => "sala-para-conferencias",
"Sala de terapias" =>"sala-de-terapias",
"Otras salas" => "otras-salas",
"Espacio para rodaje" => "espacio-para-rodaje",
"Multiespacio" => "multiespacio",
"Fiesta de Navidad" => "christmas-events",
"Presentación de producto" => "product-presentation",
"Pop-up Stores" => "pop-up-stores",
"Show cooking" => "kitchen-studio",
"Shooting" => "shooting",
"Teatro" => "theater",
"Baile" => "dance-practice",
"Yoga" => "yoga",
"Performance" => "performance",
"Sala para fiestas particulares" => "sala-para-eventos"
如您所见,我已将国际化放在模型中,但是当我想要一个下拉菜单时,没有国际化。
助手:
def categories
@categories = Room::CATEGORY_COLLECTION
@category_selected = Room::FILTER_CATEGORY_COLLECTION
end
下拉菜单:
<%= f.select :categories_name_in, options_for_select(@categories, @category_selected), { include_blank: t('all_categories') }, { class: 'selectbox' } %>
下拉菜单始终以西班牙语显示...
谢谢!
编辑: 我尝试了更多没有翻译的类别,似乎下拉菜单将西班牙语作为默认语言(来自英语语言环境网站的屏幕截图):
有什么线索吗?
【问题讨论】:
-
你应该检查
@categories的值。 -
非常感谢您的快速回答。 @categories 由类别集合定义。我试过 I18n.t(:meeting_rooms) 但不起作用:(
-
制作网站:www.spaces-on.com 真正奇怪的是它没有报错,它取的是西班牙文...
-
您是否设置了正确的语言环境?尝试传递语言环境参数:例如:
I18n.t('meeting_rooms', locale: 'en') -
如果我这样做,它确实有效,但是当我将语言设置为其他时,它会保留在语言环境中
标签: ruby-on-rails ruby ruby-on-rails-3 internationalization rails-i18n