Звуки для меня, как вам нужно какое-то глобальной функции/переменной определить символ
Я хотел бы сделать это следующим образом:
#app/helpers/application_helper.rb
def unit
User.find(current_user.id).select(:currency_type) #I don't know how your units are stored - you may need logic to return the correctly formatted unit
end
Это позволит вам позвонить: <%= number_to_currency, unit: unit %>
Переопределение Помощник Метод
number_to_currency
буквально только сам помощник, который означает, что вы можете добавить параметры на лету:
Оригинальное
# File actionpack/lib/action_view/helpers/number_helper.rb, line 106
def number_to_currency(number, options = {})
return unless number
options = escape_unsafe_delimiters_and_separators(options.symbolize_keys)
wrap_with_output_safety_handling(number, options.delete(:raise)) {
ActiveSupport::NumberHelper.number_to_currency(number, options)
}
end
дополненного
#app/helpers/application_herlper.rb
def number_to_currency(number, options ={})
unit = User.find(current_user.id).select(:currency_type)
options[:unit] = unit unless options[:unit].present?
super
end
Вам нужно просто изменить символ валюты или преобразовать тоже? –