【发布时间】:2017-03-23 16:10:20
【问题描述】:
在我的一张联系表上,有一条预先填写的信息,以便候选人避免不良信息,并有一个初步的良好合作基础。
到目前为止,我使用的是单个 message_template,但我想通过随机列表介绍一些变化。
我的翻译需要一些变量才能正常工作
原来我有这样的东西
# locales/en.yml
en:
message_template: "Hello %{name}, how are you on this %{day} !"
# my_view.html.erb
<%= t(:my_template, name: @user.name, day: DateTime.now.strftime('B') %>
我想切换到随机翻译字符串(即从列表中选择随机翻译),并且仍然替换变量。
类似
# locales/en.yml
en:
message_templates:
- "Hello %{name}, how are you on this %{day} !"
- "Hi %{name}, nice %{day} isn't it ? how are you ?"
# my_view.html.erb
<%= t('my_templates.sample'), name: @user.name, day: DateTime.now.strftime('B') %>
什么是有效的语法?
注意:
我尝试了<%= t('my_templates, name: @user.name, day: DateTime.now.strftime('B')).sample %> 但我获得了未替换参数值的字符串:
嗨 %{name},不错的 %{day} 不是吗?你好吗?
【问题讨论】:
-
我也想知道如何测试(例如使用水豚)
标签: ruby ruby-on-rails-5 rails-i18n i18n-gem