1
我使用Pymongo操纵集合女巫,看起来像下面这样的结构:如何使用Pymongo在文档中插入对象?
{
Client1:{
"_id" : "Client1"
Project1:{
Software1:{
language : "Python",
complexity : "Low"
}
Software2:{
language : "C#",
complexity : "Low"
}
Software3:{
language : "Java",
complexity : "Hard"
}
}
}
}
在这种情况下,我tryed的许多方法来更新插入一个新的Software
文档Client1
,但我可以没有找到一种方法或功能来做到这一点。
所以我的问题是:在这个范围内,我怎样才能插入一个新的Software
而不排除现有的项目?
这里是我试图,但没有工作:
client = "Client1"
client = collection.find_one({"_id": client})
project = "Project1"
software = str(raw_input("Enter with the software to be added to project: "))
language = str(raw_input("Enter with the software language: "))
complexity = str(raw_input("Enter with the software complexity: "))
collection.update({"_id" : client["_id"], }, {"$set" : {
client[project] : {software : {"language": language, "complexity" : complexity}}
}
})
,我得到的错误是:在包含client[project] : {software : {"language": language, "complexity" : complexity}}
因为现在,感谢您的关注行unhashable type: 'dict'
!
It Works!非常感谢,现在我的下一个问题是更新'Software'属性,我会尽力找到一种方法。 –
太棒了,很高兴听到! – Alex