我有rails 7,安装了Devise、gem wicked和select_country。在我看来,views/after_register/step2.html.erb:
<%= simple_form_for(@user, url: wizard_path, method: :put) do |f| %>
<%= f.input :location, placeholder: 'lieu' %>
<%= f.input :country, as: :select, collection: country_options_for_select, include_blank: 'Pays', label: 'Pays' %>
<%= f.input :photos, as: :text, placeholder: 'photos' %>
<%= f.button :submit, 'Valider', class: 'btn btn-primary' %>
<% end %>
字符串
我使用gem“select_country”来显示一个select中的国家列表。我想在我的用户表中存储全名国家。但现在,它只存储“FR”。怎么办?在application_helper.rb中:
module ApplicationHelper
def country_options_for_select
countries = ISO3166::Country.all.map { |c| [c.translations['en'], c.alpha2] }
countries
end
end
型
我使用gem“select_country”来显示一个select中的国家列表。我想在我的用户表中存储全名国家。但现在,它只存储“FR”。怎么办?如何让它存储“法国”而不是“法国”?
1条答案
按热度按时间vsdwdz231#
我想请你仔细检查一下,如果你真的想保存名字,而不是alpha2。您可以在用户区域设置中在您想要显示的任何视图中将其呈现为全名。这样更灵活。
但是,如果您确实想保存国家名称为英文,而不是alpha2,您可以将
ApplicationHelper
更改为:字符串
或者对两者都使用
[c.translations['en']
。请参阅gems代码上的line 109:
# @return [String] the “common name” of this Country in English.
个