Вы можете передать блок на uniq
и вызвать downcase
(или upcase
по вашему желанию) для объекта yield:
options(
orders.uniq { |order| order['name'].downcase }
.map { |order| ["#{order['name']} (#{order['id']})", order['name']] }
)
Возможно, вы можете попробовать изменить свой запрос:
# Using Postgres
Order
.select('DISTINCT(UPPER(name)), *')
.order('UPPER(name)')