Как передать переменную интерполяции i18n внутри помощника метки формы?

предположим, что имеется следующий en.в формате YML

#en.yml
en:
  activerecord:
    books:
       price: "Price in %{currency}"

тогда можно сделать следующее в виде

<%= t :price, :scope => "activerecord.attributes.book", :currency => "USD"%>

и он будет печатать "цена в долларах".

но я не могу понять, как передать валюту, когда этот перевод в виде

# views/books/edit.html
f.label :price

по понятным причинам бросает i18n:: MissingInterpolationArgument, но я не могу понять, какой синтаксис может быть для передачи отсутствующего аргумента

# views/books/edit.html
f.label :price, :currency => "USD"

не работает.

1 ответов


Я бы попробовал:

<%= f.label I18n.t(:price, :scope => "activerecord.attribute.book", :currency => "USD") %>