Я использую жемчужину стран, чтобы перечислить страны в раскрывающемся списке,
<%= form.collection_select(:country, ISO3166::Country.countries.sort_by(&:name), 'name', 'name', {include_blank: 'Select a country'}, class: "select__picker", 'data-style': 'form-control', required: true) %>
Есть ли способы отобразить название страны с эмодзи страны в раскрывающемся списке





Да, способ есть.
<%= f.collection_select(:country, ISO3166::Country.countries.sort_by(&:name).collect { |c| [ c.name, "#{c.name} #{c.emoji_flag}" ] }, :first, :last, {include_blank: 'Select a country'}, class: "select__picker", 'data-style': 'form-control', required: true) %>
collection_select принимает в качестве параметра text_method только имя метода.
text_method вызывается в параметре collection, который:
ISO3166::Country.countries.sort_by(&:name).collect { |c| [ c.name, "#{c.name} #{c.emoji_flag}" ] }
Итак, в вашем случае вы вызываете :first для значения и :last для текста опции:
[
['COUNTRY_1_NAME', 'COUNTRY_1_NAME COUNTRY_1_FLAG'],
['COUNTRY_2_NAME', 'COUNTRY_2_NAME COUNTRY_2_FLAG']
etc.
]
: сначала для value_method и: last для text_method?