2013-02-26 6 views
2

Обычно я использую функцию number_to_currency из ActionView::Base, чтобы получить номер, отформатированный в определенной валюте. Но мне нужно, чтобы получить символ валюты только (для отображения его рядом с текстовым полем.Number Helper - как вернуть только символ валюты

я не нашел лучший способ, чем I18n.t(:'number.currency.format.unit'). Любую лучшую рекомендацию?

Спасибо,

ответ

-1

Если все, что вы хотите символ валюты, вы можете просто взять первый элемент строки?

number_to_currency(39.50)[0] = "$" 

Или, если вы хотите все, кроме символа валюты

number_to_currency(39.50)[1..-1] = "39.50" 
+0

Это не работает для всех валют: например, евро приходит после номера. – gillien

+0

Я вижу. Я думаю, что лучший способ - это то, что у вас есть. Это то, что number_to_currency использует как источник в любом случае. –

+0

Спасибо за ваш ответ. Я держу это решение и отправляю позже, если найду что-то лучше. – gillien

0

можно форматировать, используя символ валюты, но никакого ценности, то есть с форматом только %u:

number_to_currency 1, format: '%u' 
    #=> "$" 
Смежные вопросы