我正在使用pymongo将一些日期加载到mongodb中。因为pymongo会自动转换为BSON,所以我使用datetime的datetime.strptime函数将“12/04/2013”这样的输入字符串转换为如下这样的日期对象:
>>> datetime.datetime.strptime("12/04/2013",'%m/%d/%Y')
datetime.datetime(2013, 12, 4, 0, 0)
这样就可以使用标准的mongo查询进行搜索。
我的问题是:我还想表示,我不知道某物的日期在某种程度上等同于None
,这样我就可以对它进行None
空测试。我意识到我可以把这个日期放在很久以前或者将来,用一个try-catch块输入''
或者None
,但是这是hacky思想,我宁愿使用一个合适的None类型来表示实际上是None。
如何输入无日期时间?
当您搜索MongoDB
null
时,丢失的值是等价的。它的工作方式与
pymongo
相同:所以
None
似乎是个不错的选择。它符合Python语义,很好地处理了dict.get
方法的默认行为,并在使用Python驱动程序时直观地映射到MongoDB类型。MongoDB是一个NoSQL数据库,这意味着您可以创建有趣的数据模型。
http://docs.mongodb.org/manual/core/data-modeling-introduction/
集合中的每个文档不需要具有相同的字段名集。如果你不知道日期,你可以把它忘了。当您想要检索文档时,您的应用程序代码可以很容易地检查时间戳的存在性
相关问题 更多 >
编程相关推荐