假设您有一个包含2个文档的集合:
{ 'name' : 'lutin1', 'mood' : 'good', 'last_say' : 'hello you' }
{ 'name' : 'lutin2', 'mood' : 'great' 'title' : 'mayor' }
我们使用mongodb的无模式特性。 但如果我需要展示内容:
for user in users:
print("{n} said : {s}".format(n=user['name'], s=user['last_say']))
会给'lutin2'一个'no key error' 一种方法是每次测试键是否存在,但是如果文档中有更多的字段,那么代码就会大量增加
对于每个文档,最简单的解决方案是在集合中找到所有可能的字段。 在这种情况下,所有文档都有4个字段(name、mood、title、last\u say),当某个特定字段不存在时,这些字段的值为null(因为任何SQL DB都可以工作) mongoDB提供了这样的选择吗
如果没有,你将如何处理这个问题
谢谢
不需要为每个字段都存储null。使用dict.get来处理这种情况。将默认值作为第二个参数传递
您的代码应该是什么样子的:
相关问题 更多 >
编程相关推荐