I’m using simple_form, which automatically uses country_select plugin when using a field named country, like this:
<%= f.input :country %>
But I want to be able to restrict the countries displayed.
I saw country_select code defines this:
COUNTRIES = ["Afghanistan"
...
"Yemen", "Zambia", "Zimbabwe"] unless const_defined?("COUNTRIES")
So, I though I could override COUNTRIES like below:
<% COUNTRIES = ["Canada","USA"] %>
<p><%= f.input :country %></p>
But I get an error:
compile error
/home/jack/src/beta/app/views/contacts/_address_fields.html.erb:6: dynamic constant assignment
'); COUNTRIES = ["Canada","USA"]
^
How to overwrite the COUNTRIES constant? Or is there a more elegant way of doing this?
Ps. I am using Ruby 1.8.7p330 with Rails 3.0.3
The
COUNTRIESconstant is already defined by the plugin by the time your view is executed. Define yourCOUNTRIESin an intializer. (See:config/initializers)Edit:
Put this in an initializer, like
config/initializers/countries.rb: