gpt4 book ai didi

ruby-on-rails - Rails I18n 语言环境字符串中的操作

转载 作者:太空宇宙 更新时间:2023-11-03 18:30:48 24 4
gpt4 key购买 nike

我正在尝试将操作放在语言环境中以适应不同的语言。例如,在英语中,十亿是 1,000,000,000,而在西类牙语中,十亿是 1,000,000,000,000,所以我希望能够拥有以下内容:

en:
billion: "You have %{money} billions"
es:
billion: "Tienes %{money/1000.0} billones"

为了能够写:

I18n.t :billion, :money => whatever

并且适用于任何语言。

但是,我似乎无法将操作放在语言环境的字符串中。

关于我应该怎么做的任何提示?也许我的方法只是“哲学上”的谈话是错误的?

谢谢大家!

最佳答案

根据调查,这是解决方案。抱歉进行了多次编辑。

I18n.interpolate("%{money} billion", :money => Proc.new{|x| x[:vals] / 1000}, :vals => 12121)

因此您可以更改您的翻译文件以在 :en 中使用 :vals 并在 :es 中使用 :money。

en:
billion: "You have %{money} billions"
es:
billion: "Tienes %{money_proc} billones"

I18n.t :billion, {:money => 12121, :money_proc => Proc.new{|x| x[:money]/1000.0}}

关于ruby-on-rails - Rails I18n 语言环境字符串中的操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4517790/

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