Ruby on rails 在多态关联中按子属性排序

Ruby on rails 在多态关联中按子属性排序,ruby-on-rails,nested,polymorphism,polymorphic-associations,Ruby On Rails,Nested,Polymorphism,Polymorphic Associations,我有以下型号 class Airplane < ActiveRecord::Base has_many :airtags has_many :pictures, :through => :airtags end class Airtag < ActiveRecord::Base attr_accessible :airable_type, :airable_id, :airplane_id belongs_to :airplane belongs_to :

我有以下型号

class Airplane < ActiveRecord::Base
  has_many :airtags
  has_many :pictures, :through => :airtags
end

class Airtag < ActiveRecord::Base
  attr_accessible :airable_type, :airable_id, :airplane_id
  belongs_to :airplane
  belongs_to :airable, :polymorphic => true
end

class Picture < ActiveRecord::Base
  belongs_to :picturable, :polymorphic => true

  has_many :airtags, :as => :airable,   :dependent => :destroy
  has_many :airplanes, :through => :airtags
end

在我的飞机展中,我想列出所有图片,按其名称排序。

@airplane.pictures.order:name

告诉我,在model Airtag中找不到源关联:picture或:pictures。试试“有很多:图片,:通过=>:airtags,:source=>”。它是:飞机还是:airable?如果我将其编辑为:has_many:pictures,:through=>:airtags,:source=>:airable,我得到:不能在多态对象“airableerable”上具有has_many:through关联“airableepictures”。