我有以下型號:映射的has_many和belongs_to的到活動記錄關係對象
Model A < ActiveRecord::Base
has_many :bs
end
Model B < ActiveRecord::Base
belongs_to :c, , :polymorphic => true, :foreign_type => 'c_type', :foreign_key => 'c_id'
end
我想所有的c
及其對應於給定a
在ActiveRecord::Relation
對象的形式
所以基本上我想刪除以下方法
a.bs.each do |b|
cs << b.c
end
因爲這將輸出一個數組c
,但我希望能夠得到的c
集合了,我可以運行劃定範圍,如:
cs.scoped(:order => :updated_at).all(:limit => 5)
我覺得我缺少像映射了一些簡單的概念可能是:
a.bs.map(&:to_resource)
什麼像那樣。
我正在運行rails 2.3.14。真的很感謝在這方面的幫助。
在此先感謝。
不幸的是我無法改變,因爲這是在安裝到系統中的寶石定義的關聯。我正在考慮創建一個ActiveRecord :: Relation,而不是構建一個C數組。您怎麼看? – Ishu
看看我編輯的答案,並告訴我它是否工作。 – cicloon