我有很多我想要国际化的视图文件。其中一个文件碰巧有这样的代码行:
= button_to t('.spam'), label_as_spammer_account_path(@topic.account), method: :post,
data: { confirm: t('.spam_confirmation'), user: @topic.posts.first.account.name }, class: 'btn btn-mini btn-warning'
我尝试I18n的部分特别是数据确认消息的一部分。如何将消息的@topic.posts.first.account.name
部分国际化?到目前为止,我在我的topics.en.yml文件中有这个(当然是浓缩的)
topics:
show:
spam_confirmation: "Are you sure you want to mark %{user} as a spammer, disabling the account and removing all posts?"
无论我如何修改上述代码,%{user}
部分都拒绝国际化。
我试过了:
data: { confirm: t('.spam_confirmation'), user: "@topic.posts.first.account.name" }
data: { confirm: t('.spam_confirmation'), user: #{@topic.posts.first.account.name} }
data: { confirm: t('.spam_confirmation'), user: "#{@topic.posts.first.account.name}" }
此时,我只是想做任何事情,看看是否有效。我必须具体,但因为rubocop / haml-lint抱怨我不能做得恰到好处。如果有人知道我可以尝试的其他任何事情,将不胜感激。提前谢谢。
答案 0 :(得分:1)
尝试将user:
选项传递给t
辅助方法:
data: { confirm: t('.spam_confirmation', user: @topic.posts.first.account.name) }