【问题标题】:Save List To PyMongo将列表保存到 PyMongo
【发布时间】:2014-09-19 02:11:32
【问题描述】:

从未使用过 PyMongo,所以我是新手。我希望能够将我的列表之一保存到 MongoDB。例如,我有一个列表imageIds = ["zw8SeIUW", "f28BYZ"],它经常被附加到。在每个append 之后,应将列表imageIds 保存到数据库中。

import pymongo
from pymongo import MongoClient

db = client.databaseForImages

后来

imageIds.append(data)
db.databaseForImages.save(imageIds)

为什么这不起作用?解决办法是什么?

【问题讨论】:

  • 你通过tutorial了吗?您需要将数据存储为 Python 字典,而不是列表。
  • 是的。只是有点困惑。你能给我一些源代码吗?
  • @JohnnyHK 这不是我的字典吗?我总是很困惑。
  • 不,这是一个数组/列表。 dict 看起来像 {"ids": imageIds}
  • @JohnnyHK 好的,我可以帮忙吗?

标签: python mongodb save pymongo database


【解决方案1】:

首先,如果您不知道 python dict 是什么,我建议您复习一下 Python 基础知识。查看 Google 的 Python 课程或以艰难的方式学习 Python。否则,您将每 10 分钟回到这里提出一个新问题...

现在,您必须连接到 mongoDB 服务器/实例:

client = MongoClient('hostname', port_number)

连接到数据库:

db = client.imagedb

然后将记录保存到集合“image_data”。

record = {'image_ids': imageIds}
db.image_data.save(record)

使用 save(),记录 dict 会更新一个 '_id' 字段,该字段现在指向此集合中的记录。要使用新的附加 imageId 更新它:

record['image_ids'] = imageIds # Already contains the original _id
db.image_data.save(record)

【讨论】:

  • 一切正常,但是当我重新启动服务器时,新添加到 dict 的对象消失了。
  • 这是一个不同的问题!首先:您需要阅读 pymongo 教程。如果您不了解系统的工作原理,您将一事无成……
  • 拜托,按照 Sp00n3r 所说的去做,这将是最好的。
猜你喜欢
  • 2014-08-01
  • 2020-11-28
  • 2018-10-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多