如何从kaminari中分页mongoid参考集?

时间:2014-01-11 21:48:38

标签: ruby mongodb ruby-on-rails-4 pagination kaminari

我有两个集合,我想通过引用的集合进行分页。

class Col1
    include Mongoid::Document

    field :slug,                :type => String
    field :created_at,          :type => DateTime

    has_many :col2,         :order => :created_at.desc
end

class Col2
    include Mongoid::Document

    field :some_id,         type: String
    field :html,                type: String
    field :created_at,          type: DateTime

    belongs_to :col1
end

这就是我想出来的,

Col1.find_by(slug: "slug").col2.page(2).per(1).entries

我的问题是,这个查询是从Mongodb分页而不是Mongoid会加载所有内容并从结果中分页。那么,如果我有100万个文档,它不会加载所有文档并缓存结果并分页?如果要这样做,我该如何从Mongo db中分页?

编辑:

这是我从Mongoid获得的标准,但我不确定是不是这样。

#<Mongoid::Criteria
  selector: {"_id"=>BSON::ObjectId('52d1b99465756eaf02010000')}
  options:  {:sort=>{"created_at"=>-1}, :limit=>25, :skip=>0}
  class:    Col2
  embedded: false>

0 个答案:

没有答案