如何把variables放入我的查询? (mongoose)
需要为我的用户添加用户ID,这将是我的collections项数+1。例如,如果我有100个用户,下一个用户的用户ID将是101。
User.count().exec(function (e, count) { console.log(count); // Count = 15, correct. newUser.userId = count + 1; // Ain't working... });
那么如何将“count”variables添加到我的查询中? 或者是更先进的方式,让自动增量(主键)在mongoose?
你的假设是正确的,有一种不同的方式来获得文档的“主键”。 使用objName._id
(在你的情况下, newUser._id
)来访问在创build对象时为你的文档生成的唯一值。
请注意,MongoDB不是一个关系数据库,所以它不是一个主键,它会是一串垃圾。 如果你确实需要一个自动递增_id
,那么你也可以使用这里logging的过程来做到这一点。 基本上,使用db.counters.insert
创build一个计数器,然后创build自己的函数,使用findAndModify
获取您在db.counters
放置的序列号,然后对其进行增量。 最后,您可以通过在调用插入过程中调用该函数的结果_id
来将文档插入到User
(或类似的东西)中。