MongoEngine怎样更新列表数据到MongoDB

发布于 2022-08-24 13:22:21 字数 398 浏览 15 评论 0

mongodb数据结构是下面这样的:

{
    "_id" : 1,
    "tag" : [tag1, tag2, tag3, tag4]
}

然后添加tag5tag

post = Post.objects(id=1).first()   # 获取所在post
temp_tag = post.tag                 # 获取post的tag列表,不知道问题是不是出在这?
post.tag = temp_tag.append('tag5')  # 添加tag5到列表末尾
post.save()                         # 更新

但是怎么都添加不进去,是不是我的写法有问题?

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

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

发布评论

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

评论(2

杯别 2022-08-31 13:22:21
post.tag = temp_tag.append('tag5')  # 添加tag5到列表末尾

这是在干嘛?append原地修改,应该返回None吧。

夜血缘 2022-08-31 13:22:21

上边那个说对了,不过说的不够明白。。
意思就是temp_tag.append('tag5')没有返回值,所以post.tag并没有更新。
正确写法应该是

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