0
我继承了一个带有下列表格的Web应用程序:Categories,SubCategories和Pages。 Pages有category_id和sub_category_id列。Rails 3 - 在旧数据库上急切加载
我需要编写一个高效的查询到在我看来急切地加载网页通过迭代类别和sub_category(例如原油如下):
- Category One (categories.each do |category|...)
-- Page One (category.pages.each do |page|...)
-- SubCategory One (category.sub_categories.each do |sub_category|...
---- Page Two (sub_category.pages.each do |page|...)
Category.rb:
class Category < ActiveRecord::Base
has_many :pages
has_many :sub_categories
end
子类别。 RB:
class SubCategory < ActiveRecord::Base
belongs_to :category
has_many :pages
end
Page.rb:
class Page < ActiveRecord::Base
belongs_to :category
belongs_to :sub_category
scope :active_pages, :conditions => {:is_active => true}
end
我已经喜欢收效甚微以下查询实验,其中 - 行业标准而言:
Category.includes(:sub_categories, :pages).where('pages.is_active = 1')
类别的伟大工程,但我不知道负载如何渴望 - 行业标准。在此先感谢,任何帮助,非常感谢。根据this article我只是在寻找这样的事情可能会做你想要什么
谢谢,诺埃尔。这工作就像一个魅力(我重写了Activerecord 3的语法)和渲染从1200毫秒到200毫秒。再次感谢。 – TMB 2010-08-04 19:48:51
Active Record 3有新的语法?为什么我没有告诉过这个? :) – 2010-08-04 23:20:57