class Channel < ActiveRecord::Base
has_many :programs
end
class Program < ActiveRecord::Base
belongs_to :channel
has_many :program_schedules
end
class ProgramSchedule < ActiveRecord::Base
belongs_to :program
end
我想获得这样的数据数组:
第1频道:
计划1
计划2
频道2:
我尝试过这个查询,但它只检索“频道” - 字段(没有程序和日程表)
@data = Channel.joins(:programs => :program_schedules).group("channel_id")
答案 0 :(得分:1)
我不建议你以这种方式获取所有行。
做这样的事情。
在你的控制器中,比如索引动作
def index
@channels = Channel.all
end
在您要显示所有内容的视图中。
%ul#channels
= @channels.each do |channel|
%li= channel.name
%ul.channel
= channel.programs.each do |program|
%li= program.name
%ul.program
= program.schedules.each do |schedule|
%li= schedule.name