2013-06-25 49 views

回答

5

一種方式我是知道的,是使用你的數據文件中的符號(指着翻譯項目):

/data/product.yml

title: :product_title 

/config.rb

set :lang, :de 
activate :i18n, :langs => [:de, :en] 

這些符號可譯爲(中間人)通常...

/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

拜見德意志Produktname

http://0.0.0.0:4567/en/i18n.html

我的英文產品名稱

+0

啊那就是這樣的關鍵數據甚至包含語言環境文件。謝謝 - 其他方式描述 - - content_for:metaSubject do - I18n.t:metaSubjectHome –

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> 
+0

你不需要用'I18n#t'再次包裝它 –