如何本地化来自存储在数据文件夹中的yaml文件的数据字符串
想知道是否有一些我错过的技术。
答案 0 :(得分:5)
我所知道的一种方法是在数据中使用符号(指向翻译项目):
<强> /data/product.yml 强>
title: :product_title
<强> /config.rb 强>
set :lang, :de
activate :i18n, :langs => [:de, :en]
这些符号可以翻译为(Middleman)通常......
<强> /locales/de.yml 强>
---
de:
product_title: "Mein deutscher Produktname"
<强> /locales/en.yml 强>
---
en:
product_title: "My english product title"
...并在您的模板中使用:
<强> /source/localizable/i18n.html.erb 强>
<h1><%= I18n.t(data.product.title) %></h1>
<强> http://0.0.0.0:4567/i18n.html
强>
Mein deutscher Produktname
<强> http://0.0.0.0:4567/en/i18n.html
强>
我的英文产品标题
答案 1 :(得分:2)
您可以使用.send
方法。
在/data/en/production.yml
---
title: "My english product title"
在/data/ja/production.yml
---
title: "私の日本語の商品名"
然后在你的模板中......
<h1><%= I18n.t(data.send(I18n.locale.to_sym).product.title) %></h1>