Вы делаете это более сложным, чем это должно быть на самом деле. Вам даже не нужно явно вызывать options_for_select или использовать .html_safe
.
Чтобы создать выборку из произвольного списка, вы можете просто передать массив:
<%= f.select(:currency_code, ["AUD", "BRL"]) %>
Если вы хотите разные значения и метки, тогда передайте массив пар:
<%= f.select(:currency_code, [["(AUD) Australian Dollar", "AUD"], ["(BRL) Brazilian Real", "BRL"]]) %>
Если у вас есть валюты, объявленные как хеш, вы можете преобразовать их в набор пар с помощью:
hash = { "AUD" => "(AUD) Australian Dollar", "BRL" => "(BRL) Brazilian Real" }
hash.map { |value, label| [label, value] }