在使用STI时,我试图获取特定类型的所有页面。Rails - 主类,子类,如何获取子类中的所有记录
我在pages_controller.rb
class PagesController < ApplicationController
def index
@pages = Page.all
end
end
下面是一个主类,我在pages_controller.rb另一个类
class Blog < Page
def index
@pages = Blog.all
end
end
不应在博客类得到了所有页面:类型的“博客”?相反,它会获取所有页面,而不考虑类型。我也试着@pages = Page.where(:type => "Blog")
我访问URL http://localhost:3000/blog
这里是我的路线
resources :pages do
collection do
get :gallery
get :list
end
end
resources :blog, :controller => :pages
我认为如果您创建一个单独的控制器,而不是在PagesController本身中创建一个类会更好。 – Rohit 2010-12-11 08:42:16
这是唯一的方法吗?我的恐惧是,如果我有3或4种类型,那么我需要3或4个控制器。每个控制器都会包含类似的代码(例如 - 按类型获取所有页面) – jyoseph 2010-12-11 09:03:06