我用过 country_select gem,它工作正常,现在我想将选项值设置为与下拉列表中显示的国家名称相同的完整国家名称,而不是国家代码。
例如:我会像下面这样:
<select id="order_ship_country" name="order[ship_country]">
<option value="AU">Australia</option>
<option value="CA">Canada</option>
<option value="GB">United Kingdom</option>
<option value="US">United States</option>
</select>
但我期待这样:
<select id="order_ship_country" name="order[ship_country]">
<option value="Australia">Australia</option>
<option value="Canada">Canada</option>
<option value="United Kingdom">United Kingdom</option>
<option value="United States">United States</option>
</select>
提前致谢
最佳答案
1/做一个初始化
# config/initializers/country_select.rb
CountrySelect::FORMATS[:with_full_country_name] = lambda do |country|
[
country.name,
country.alpha2,
{
'value' => country.name,
}
]
end
2/在你的 View 中用format
调用它
<%= country_select("user", "country", format: :with_full_country_name) %>
如文档中所述:https://github.com/stefanpenner/country_select#using-a-custom-formatter
关于ruby-on-rails - 如何自定义选项以获取完整的国家名称作为 country_select gem 的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47413970/