如何限制country_select插件中的国家名称?
我使用simple_form,使用字段中指定的国家的时候,这样它会自动使用country_select插件:如何限制country_select插件中的国家名称?
<%= f.input :country %>
但我希望能够限制国家显示。
我看到country_select code defines this:
COUNTRIES = ["Afghanistan"
...
"Yemen", "Zambia", "Zimbabwe"] unless const_defined?("COUNTRIES")
所以,我虽然我可以覆盖的国家,如下面:
<% COUNTRIES = ["Canada","USA"] %>
<p><%= f.input :country %></p>
但我得到一个错误:
compile error
/home/jack/src/beta/app/views/contacts/_address_fields.html.erb:6: dynamic constant assignment
'); COUNTRIES = ["Canada","USA"]
^
如何覆盖国家不断?还是有更好的方法来做到这一点?
Ps。我正在使用Ruby 1.8.7p330和Rails 3.0.3
COUNTRIES
常量已由插件在执行视图时定义。在初始化程序中定义COUNTRIES
。 (参见:config/initializers
)
编辑:在初始化 将这个像config/initializers/countries.rb
:
ActionView::Helpers::FormOptionsHelper::COUNTRIES = ["X", "Y", "Z"]
我按照建议,但整个列表仍在显示! – Zabba 2011-03-05 22:43:16
你重新启动了你的服务器吗? – apneadiving 2011-03-05 23:00:46
看我的编辑,并注意apneadiving的提醒重新启动您的服务器。 – jdl 2011-03-05 23:06:18
我想这是在Rails应用程序的开始加载。您是否尝试在初始化程序中设置COUNTRIES? – apneadiving 2011-03-05 22:31:33
只是fyi,我一般使用https://github.com/jim/carmen – apneadiving 2011-03-05 22:32:47