Ruby on rails 使用RubyonRails创建与州、省、区和市的关联

Ruby on rails 使用RubyonRails创建与州、省、区和市的关联,ruby-on-rails,ruby-on-rails-3,ruby-on-rails-4,model,ruby-on-rails-3.2,Ruby On Rails,Ruby On Rails 3,Ruby On Rails 4,Model,Ruby On Rails 3.2,请让我帮忙,这是我在RubyonRails中的第一个问题 我的申请有4个州、省、区和市 app/models/state.rb Class State < ActiveRecord::Base has_many :provinces end app/models/province.rb Class Province < ActiveRecord::Base belongs_to :state has_many :districts end app/models/dist

请让我帮忙,这是我在RubyonRails中的第一个问题

我的申请有4个州、省、区和市

app/models/state.rb
 Class State < ActiveRecord::Base
 has_many :provinces
end

app/models/province.rb
 Class Province < ActiveRecord::Base
 belongs_to :state
 has_many :districts
end

app/models/district.rb
Class District < ActiveRecord::Base
 belongs_to :province
 has_many :cities
end

app/models/city.rb
 Class City < ActiveRecord::Base
 belongs_to :district
end
My schema.rb我向表中添加了外键

我的问题是什么


How show link this domain.com/state/2/province/4/district/6/city/4???

嵌套资源深度超过2级通常不是一个好做法

但如果你真的想这么做,就把它添加到路由中

resources :states do
  resources :provinces do
    resources :districts do
      resources :cities
    end
  end
end
然后可以使用路径辅助对象

state_province_district_city_path(@state, @province, @district, @city)
这将给出/state/2/省/4/区/6/市/4,如果


添加控制器状态

@state = State.new
@state.province_id = (params[:province_id])

2层深是什么意思?您还有其他解决方案吗?如何显示州下的所有省?两级/州/2/省/4。三级/state/2/province/4/district/6如果您有state对象,请说@state。您可以致电@state.provides,它将为您提供该州的所有省份我有新闻模型,新闻属于城市&城市有许多新闻。。。代码是什么-城市中有多少新闻数量?
@state = State.new
@state.province_id = (params[:province_id])