我有几个mongoid模型:
class Album
include Mongoid::Document
field :name, type: String
embedded_in :band
end
class Band
include Mongoid::Document
field :name, type: String
embeds_many :albums
end
我试图让inherited_resources将json中的嵌入式专辑包含在乐队中,如下所示:
class BandsController < InheritedResources::Base
respond_to :html, :xml, :json
def permitted_params
params.permit!
end
protected
def collection
@bands ||= end_of_association_chain.includes(:albums)
end
end
但是在尝试检索波段列表时出现以下错误:
undefined method `eager_load' for Mongoid::Relations::Embedded::Many:Class
知道我可能做错了吗?
答案 0 :(得分:2)
我非常肯定这里的错误是因为你覆盖了collection
方法。 collection是一个mongoid用来在集合中进行操作的内部方法,所以我想如果你覆盖它会导致一些冲突。