当使用belongs_to关系时,Mongoid,陌生人mongodb查询

时间:2018-05-14 07:12:24

标签: mongoid mongoid6

我正在使用mongoid 6,我的项目中有两个模型:

class User
  belongs_to :project
end

class Project
  has_many :users
end

当我从用户实例访问项目时,我看到这个mongodb日志:

> user.project
... DEBUG -- : MONGODB ... STARTED | {"find"=>"projects", "filter"=>{"_id"=>BSON::ObjectId('5accdd5775aefb2d085087e2')}, "sort"=>{"_id"=>1}, "limit"=>1, "singleBatch"=>true}
... DEBUG -- : MONGODB ... SUCCEEDED | 0.000482198s

为什么这会使用sortlimit?手动找到项目时不会发生这种情况:

> Project.find(user.project_id)
... DEBUG -- : MONGODB ... STARTED | {"find"=>"projects", "filter"=>{"_id"=>BSON::ObjectId('5accdd5775aefb2d085087e2')}}
... DEBUG -- : MONGODB ... SUCCEEDED | 0.000278153s

似乎更慢并打破了mongoid查询缓存的使用。在某些情况下。

0 个答案:

没有答案