Based on following models
class Company < ActiveRecord::Base
belongs_to :country
end
class Country < ActiveRecord::Base
has_many :companies
end
I want to have in my companies/_form a select tag containing all the countries
I think that the Company.new(params[:company])
in companies_controller#create
can create the association between company and the selected country
I'm running rails 3.0.0, what is the best way to achieve that?
thanks for your insights
collection_select
should do the trick for you:
collection_select(:company, :country_id, Country.all, :id, :name, :prompt => 'Please select country')
The above code assumes that the countries table have a name
column. If it doesn't, replace the fifth parameter with whatever the column of the country name is.
:prompt
means that you're forcing the user to choose one country.
Find more information in the Rails API documentation.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With