【问题标题】:How to insert a dictionary to a list in mongodb?如何将字典插入到mongodb的列表中?
【发布时间】:2019-10-05 18:39:24
【问题描述】:

我需要在mongodb的一个列表中插入一个字典,

我有这个数据库:

{library_id:1, library_name:rj, library_books:[{book_name:r&d, page_num:312, book_tags:[]}, {book_name:java, page_num:122, book_tags:[]}]}

我想根据合适的 book_name 插入 book_tags

所以它会是这样的(对于书名研发)-

{library_id:1, library_name:rj, library_books:[{book_name:r&d, page_num:312, book_tags:[{tag_name:study, tag_description:self learning}]},{book_name:java, page_num:122, book_tags:[]}]}

我该怎么做? 谢谢!

【问题讨论】:

  • 你已经写过代码了吗?
  • 你需要从一些库开始。 Pymongo 或电机(python3 的 motor_asyncio 和 Python2 的 motor_tornado)。
  • 嘿,是的,我正在使用 pymongo,它是需要将详细信息插入数据库的几个函数的一部分(所以我不能在开始时插入它......)其中一个应该按照我的描述插入 book_tags..

标签: python mongodb


【解决方案1】:

您应该更新该字段。看起来是这样的:

db.mongodb.update_one(
       { 'library_books.book_name': your_book_name },
       { $push: { 'library_books.book_name': your_tags } }
    )

也许您需要使用$each 而不是$push。区别在于描述here

也阅读this 的答案。我认为这是你的方式。

【讨论】:

    猜你喜欢
    • 2022-10-18
    • 1970-01-01
    • 2021-06-27
    • 1970-01-01
    • 2021-07-04
    • 2016-02-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多