我发现了一些东西,或者我不知道mongodb是一系列的收集品。我想在mongodb中实现动态集合。我来自python,我创建了动态类。我玩了两个查询,它给了同样的东西。
> db['shopping_cart'].find()
{ "_id" : ObjectId("5438b8afa4bc2874f342f36c"), "items" : [ ], "coupon_codes_used" : [ ], "owner" : 2062 }
和
> db.shopping_cart.find()
{ "_id" : ObjectId("5438b8afa4bc2874f342f36c"), "items" : [ ], "coupon_codes_used" : [ ], "owner" : 2062 }
这些查询之间有什么区别?
答案 0 :(得分:0)
它们都是有效的语法。
通常你会使用
db.shopping_cart.find()
但是,如果您的集合名称包含mongo在集合名称中不接受的任何字符,则可以使用替代语法。
db["shopping_cart"].find()
示例强>
如果您的收藏品名为“shopping-cart”(连字符而不是下划线)。 Mongo不接受这个作为集合名称。 db.shopping-cart.insert({"name":"value"})
会返回错误。在这种情况下,如果您坚持使用“shopping-cart”作为收藏名称,则需要使用db['shopping-cart'].insert({"name":"value"})
。