0

私はそれを正しく表現したと思います...

私は資産と呼ばれるポリモーフィックなモデルを持っています:

class Asset < ActiveRecord::Base
  belongs_to :assetable, :polymorphic => true
...
end

スコープとして機能するクラス レベルのメソッドがあります。

def self.some_scope
     assets = Asset.joins(:assetable).where('assetable.approved_at IS NOT NULL').order('assetable.approved_at DESC').limit(50)
end

親のapproved_at属性がnullではないアセットのリストを取得しようとしていapproved_atます.50の制限でその属性で降順で並べ替えます.私が持っているものがどれだけ正しいかはわかりませんが、私が今得ているエラーは次のとおりです。

"Can not eagerly load the polymorphic association :assetable"
4

1 に答える 1

0

これを行う適切な方法は、次のように別の方法で考えることです。

# If assetable model is called Folder
def self.some_scope
   folders = Folder.where('approved_at IS NOT NULL').order('approved_at DESC').limit(50)
   folders.collect{|p| p.assets}
end
于 2010-09-01T17:31:08.573 に答える