将变量传递给simple_form中的i18n转换

时间:2012-04-03 17:44:05

标签: ruby-on-rails internationalization simple-form

我需要传入一个变量来生成一个简单形式的字段标签。通过正常的翻译,你可以通过以下方式解决这个问题:http://guides.rubyonrails.org/i18n.html#passing-variables-to-translations但是对于我的生活,我无法用简单的形式使用它。

我正试图通过使用:

= f.input :name, :contact_type => f.object.contact_type.to_s

在simple_form.en.yml文件中:

en:
    simple_form:
        labels:
            contacts:
                name: "Name %{contact_type}"

这是输出: 姓名%{contact_type}“

一起忽略变量。有没有办法实现这个目标?

谢谢,

Ryan Lundie

1 个答案:

答案 0 :(得分:2)

您需要将标签显式添加到表单输入中,如下所示:

= f.input :name,
  :contact_type => f.object.contact_type.to_s,
  :label => t(:'simple_form.labels.contacts.name', :contact_type => "Whatever contact type")