我有一个与章节有很多关系的故事 章节与页面有很多关系
我想使用方法Stories.pages
返回我的Stories对象上的页面列表def pages
self.chapters.map do |c| c.pages end
end
这不会返回列表列表 香港专业教育学院使用这个
def pages
pages =[]
self.chapters.each do |c|
c.pages.each do |p|
pages << p
end
end
end
我是ruby的新手,使用php和c#background,我知道我可以直接在故事和页面之间建立关联或创建自定义查询(INNER JOIN)。
但是我想把头包裹在地图上,稍微减少一些方法。
答案 0 :(得分:0)
无需创建自己的自定义方法,Rails已将此提供为has_many :through
associations:
class Story < ActiveRecord::Base
has_many :chapters
has_many :pages, :through => :chapters
end