0

我想我还不知道正确的术语,因此很难找到正确的答案。

所以,我创建了一个带有 Exhibit 和 Category 的引擎。我创建了第三个模型分类,以便将展览分配给多个类别。这只有exhibition_id 和category_id。

我想做的是为每个类别创建一个页面,因此我将一个展览分配给新闻类别,将其显示在“新闻”页面中,何时将其分配给照片类别以将其显示在“照片”页面等。我猜这是一个路由配置,但我还没有到那里(但是,如果它确实是一个路由配置,请告诉我)

我的问题是如何仅从一个控制器中检索来自不同模型的字段。是)我有的:

class Categorization < ActiveRecord::Base
  belongs_to :exhibit
  belongs_to :category
end

class Category < ActiveRecord::Base
  has_many :categorizations
  has_many :exhibits, :through => :categorizations
  acts_as_indexed :fields => [:title]
  validates :title, :presence => true, :uniqueness => true 
end

class Exhibit < ActiveRecord::Base
  has_many :categorizations
  has_many :categories, :through => :categorizations, :source => :category
  acts_as_indexed :fields => [:title, :bulb]
  validates :title, :presence => true, :uniqueness => true
  belongs_to :foto, :class_name => 'Image'
end

我如何检索:foto属于Exhibit:category =>"News"

我尝试添加模型并且我可以检索但我如何将它scope :news, where(['category_id="1"'])与这个展览的照片连接起来(我猜这是)?CategorizationCategorization.newsCategorization.exhibit_idExhibit.foto

我不知道从哪里开始...

谢谢你们...

佩特罗斯

4

1 回答 1

1

我会在控制台中尝试这个:

Categorization.news.first.exhibit.foto    

看看这是否不会为您提供所需的 Image 对象。问题是新闻有几个可能的展品。

于 2011-07-18T21:18:08.710 回答