mongoose学习记录
before
node搭建的博客继续做下去当毕设了,半年前做的了,忘的七七八八,诶学了还是得好好记录。
连接
|
|
find
在qaModel中直接find,得到的user是它的id,用populate转一下,得到的就是user的Object了
|
|
如果再下一级的转换就 populate('answer.user')
update
使cb中的值是更新后的对象
|
|
In Mongoose 4.0, the default value for the
new
option offindByIdAndUpdate
(andfindOneAndUpdate
) has changed tofalse
(see #2262 of the release notes). This means that you need to explicitly set the option totrue
to get the new version of the doc所以要加上option 参数{new:true} 保证callback中的参数是更新后的对象
- 12345A.findByIdAndUpdate(id, update, options, callback) // executesA.findByIdAndUpdate(id, update, options) // returns QueryA.findByIdAndUpdate(id, update, callback) // executesA.findByIdAndUpdate(id, update) // returns QueryA.findByIdAndUpdate() // returns Query
嵌套结构里的更新
数据的结构如下:
|
|
|
|
如果知道这个要修改的answer在answers数组中的index,可以用answers.index.up来更新,现在不知道索引,就使用 $
来占位, Filter用{answers._id:xxx} update用{answers.$.up:xxx}