在mongodb集合中导入json吗?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在mongodb集合中导入json吗?相关的知识,希望对你有一定的参考价值。
我想在MongoDB集合中将.json文件作为字段导入,其中导入的数据实际上可以用作带有字段标签的子文档。这可能吗?我将Django用于我的Web框架和文件上传。
现在,数据模型在Django中看起来像这样:
class Trip(models.Model):
name = models.CharField(max_length = 120)
file = models.FileField(upload_to = 'trips/files/', null = True, blank = True)
我希望“文件”字段为.json导入,将子字段读入文档;在Mongo中,数据模型如下所示:
"_id":
"$oid": "5e18e9b0593b827d141e9c6d"
,
"name": "f"
"file":
"field1": "asdf"
"field2": 1234
"field3":
"fieldA": "3"
"fieldB": "876"
其中“文件”下的字段在导入的.json文件中。显然,真正的json会更复杂,但这只是一个简单的示例。
[如果可能的话,请告诉我,能够导入这些.jsons并在Mongo中正确处理它们是我获得运行所需的一切。谢谢!
答案
PyMongo非常有用。它提供的insert_one()
功能与典型的mongo插入功能相同。请查阅文档here。您可能需要基于模型的功能。您还需要合并PyMongo要求才能利用它。
尝试一下:
import pymongo
client = pymongo.MongoClient("localhost:27017")
db = client.your_database #Database
col = db.your_collection #Collection
class Trip(models.Model):
name = models.CharField(max_length = 120)
file = models.FileField(upload_to = 'trips/files/', null = True, blank = True)
def insert_into_collection(self):
col.insert_one('uploaded_file':file)
以上是关于在mongodb集合中导入json吗?的主要内容,如果未能解决你的问题,请参考以下文章
使用settings.json而不是mongodb集合有什么好处吗? [关闭]