我的模型是:
class City < ActiveRecord::Base
belongs_to :region
has_many :activities
has_many :restaurants
end
class Activity < ActiveRecord::Base
belongs_to :city
end
我想要访问所有城市的所有活动。从上一个关于stackoverflow的问题中,我读到我不能这样做@cities.activities,而是我做了以下事情:
通过关联添加 has_many 到 Region
class Region < ActiveRecord::Base
has_many :activities, :through => :cities
end
@activities = @region.activities.find_all_by_homepage_city(true)
但是当我调用变量@activities 时使用多态路径。
- @activities.each do |b|
%li
=link_to b.name, polymorphic_path([@region, @city, b])
我收到消息 "not method for region_activity_path" 。这是正确的,因为没有资源:资源之后的活动:区域
resources :regions do
resources :cities do
resources :activities
我可以在区域之后添加活动资源,但我的网址不正确。我怎样才能解决这个问题?