使用18n和I18n:炼铁术中的炼金术,以便根据语言环境翻译文本值

时间:2014-11-19 08:44:39

标签: ruby-on-rails

在我的应用程序中,有一个字段credit_debit,它有两个字符串值:' credit'并且'借记' 这两个术语应以本地化形式显示给用户,以便当应用程序使用意大利语语言环境时,应将其翻译为“严重”。并且' dare' 我可以为credit_debit字段编写自己的setter / getter方法并在其中处理这个问题,但也许我可以利用I18n架构以与本地化的其余部分一致的方式来实现。如果可能,我该如何实现呢?

1 个答案:

答案 0 :(得分:0)

如果您已经使用了i18n本地化,则无法解决问题。 只需使用该字段作为i18n的密钥(如果您愿意,可以使用前缀)

t("prefix_#{credit_debit}")

只需为您的语言环境定义字符串。 所以在你的语言环境中:

prefix_credit: credit
prefix_debit: debit

在你的语言环境中:

prefix_credit: avere
prefix_debit: dare