【发布时间】:2015-08-19 08:28:19
【问题描述】:
我有 3 个模型 - 捐赠、人员、组织
class Donation < ActiveRecord::Base
belongs_to :donatable, polymorphic: true
end
class Person < ActiveRecord::Base
belongs_to :branch
has_many :donations, as: :donatable
end
class Organization < ActiveRecord::Base
belongs_to :branch
has_many :donations, as: :donatable
end
捐款可以来自个人或组织。人员和组织属于分支机构。
我正在尝试过滤来自特定分支机构的捐款并将它们汇总,这是我写的范围:
scope :for_branch, lambda { |branch_id|
return nil if branch_id.blank?
joins(:donatable).where(:branch_id => branch_id)
}
返回错误:
Cannot eagerly load the polymorphic association :donatable
我怎样才能完成任务?
【问题讨论】:
-
您要在哪个模型中添加此范围?
-
我添加范围的模型是捐赠
标签: ruby-on-rails rails-activerecord polymorphic-associations