如何在rails中同时包含动态选择菜单和嵌套属性?
考虑我有三个表用户,国家,州。 我有一个页面来添加一个新用户,当我添加一个新用户时,我必须在选择框中列出国家和选择国家,多个选择框应该加载国家的状态,我应该能够选择所需的状态。
同样,我可以单击添加按钮添加另一个选择框,然后选择另一个国家/地区并选择属于该国家/地区的状态,依此类推。 我知道这需要嵌套属性和动态选择菜单function,但不知道我如何一起使用它们。
以下是我试过的
楷模:
class Country < ActiveRecord::Base has_many :states attr_accessible :name end
和
class User true has_many :state attr_accessible :username, :user_countries_attributes end
和
class State < ActiveRecord::Base belongs_to :country attr_accessible :name, :country_id end
和
class UserCountry < ActiveRecord::Base serialize :state_id belongs_to :users attr_accessible :country_id, :user_id, :state_id end
此外,下图显示了我想要清楚地完成的工作
UPDATE
prohibited this user from being saved:
country %>
UPDATE1:
'Select Country' %> 'Select State'}, { :multiple => true } %>
您可以使用nested_form( https://github.com/ryanb/nested_form )以下列方式实现此目的:
<%= nested_form_for(@user) do |f| %> .... <%= f.fields_for :user_countries do |country| %> <%= render "user_country_fields", :f => country %> <% end %> <%= f.link_to_add "Add" :user_countries %> <%= f.submit %>
同样,部分
<%= f.link_to_remove "Remove" %>