为什么mongodb插入数据经常出现时间相同的情况

发布于 2022-08-24 13:25:42 字数 787 浏览 13 评论 0

用 mongoengine 建立 collection,其中时间是这么定义的

from mongoengine import Document, DateTimeField
import datetime

class Post(Document):
    created = DateTimeField(default=datetime.datetime.utcnow())

在插入数据的过程中,老是出现插入时间相同的情况,下面这几条都是我手动插入的数据,但是发现有些十句的时间居然是一模一样的,下面是读出来的数据,可以看到好几条时间一样的,而这几条数据中间都间隔了好几分钟的:

50f2bf6c674d9a1136de4964 • 2013-01-13 14:06:33.717000 • root • 0

50f2bf9c674d9a1136de4965 • 2013-01-13 14:06:33.717000 • root • 0

50f2bfc6674d9a1136de4966 • 2013-01-13 14:06:33.717000 • root • 0

50f2c01f674d9a1136de4967 • 2013-01-13 14:06:33.717000 • admin • 0

50f2c1b8674d9a1136de4968 • 2013-01-13 14:06:33.717000 • admin • 0

50f2b909674d9a1118d57170 • 2013-01-13 13:37:03.176000 • root • 0

50f2b681674d9a11023af511 • 2013-01-13 13:28:07.676000 • root • 0

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

萌面超妹 2022-08-31 13:25:42

Django平台上有过类似的问题,Post日期只在对象创建的时后生成,所以会出现时间相同的情况
http://stackoverflow.com/questions/27...

MongoEngine是借鉴Django的

解决方法:

datetime.datetime.utcnow() 改为 datetime.datetime.utcnow 即可,看清这里不要有括号

最后的乘客 2022-08-31 13:25:42
default=datetime.datetime.utcnow()

估计是这里先执行了datetime.datetime.utcnow()

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文