大家好,我现在已经坚持这个问题一段时间了。 所以我在MongoDB数据库中有一个看起来像这样的JSON对象:
{
"gameID" : 900000001
"characters" : [
{
"characterID" : 1
"inventory" : [
"item1"
]
}
]
}
如何使用此位JSON添加到库存数组中?
{
"gameID" : 900000001
"characterID" : 1
"inventory" : [
"item2"
"item3"
]
}
我尝试过使用多个不同的findOneAndUpdate操作和updateOne操作,但我似乎无法访问角色中的库存数组。我似乎总是推动" item2"和" item3"进入不正确的地方我已经做了很多关于此的研究,发现了一些有趣的读物。
push into deeply nested array 这回答了这个问题暗示MongoDB 2.0.42可能无法实现。如果我无法做到这一点,那么有人能指出我的下一个最佳方法吗?
另外,为什么我不能在npm中使用最新版本的MongoDB? Npm似乎只允许安装2.0.42版本。提前谢谢。
答案 0 :(得分:0)
如果我没弄错的话,你使用mongodb driver的最新版本(2.0.42),而不是mongodb本身。如果要检查数据库本身的版本,请在命令行中键入:
.add {
background-image: url('http://icons.iconarchive.com/icons/awicons/vista-artistic/16/add-icon.png') !important; width: 16px; height: 16px; display: block;
}
.edit {
background-image: url('http://icons.iconarchive.com/icons/designcontest/outline/16/Pencil-icon.png') !important; width: 16px; height: 16px; display: block;
}
.delete {
background-image: url('http://icons.iconarchive.com/icons/oxygen-icons.org/oxygen/16/Actions-edit-delete-icon.png') !important; width: 16px; height: 16px; display: block;
}
我会使用positional operator和$ each运算符,它允许您将多个值附加到列表中。
mongod --version