我的模型是;关系;无法从数据库获取所有事件
class region
has_many :cities
end
class event
belongs_to :city
end
class city
has_many :events
belongs_to :region
end
Eventcontroller
def index
@region = Region.find(params[:region_id])
@cities = @region.cities
@city = City.find(params[:city_id])
@events = @city.events
@events_by_date = @events.group_by(&:start_on)
end
页: 区域/ X /城市/ X /事件
显示来自城市的所有事件。
问题:如何显示我/地区/活动页面上所有城市的所有活动?我创建了一个资源
resources :regions do
resources :events do
collection do
get 'all_events'
end
end
但是,我如何在eventcontroller中定义“all_event”动作?
我无法在我的eventcontroller @events = @ cities.events中执行此操作,因为事件belongs_to:city。有没有解决方案?
我尝试这样做:
控制器:
@region = Region.find(1)
@events = Event.includes(:city)
@events_by_date = @events.group_by(&:published_on)
查看:
%ul.property_list
- @events_by_date[date].each do |event|
%li.restaurant
%span.icon
%h5
= link_to event.title, polymorphic_path([@region, event.city.name, event])
错误:未定义的方法`region_Assisi_event_path”
只是使它event.city在多态路径 –
thanks.Kyle!..它作品..:包括是伟大的功能! – Remco