Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python PyMongo和Flask PyMongo库之间的差异_Python_Mongodb_Flask - Fatal编程技术网

Python PyMongo和Flask PyMongo库之间的差异

Python PyMongo和Flask PyMongo库之间的差异,python,mongodb,flask,Python,Mongodb,Flask,我是PyMongo和Flask的新手,不过我已经完成了Flask的教程,并且对它感到相当满意。我现在正试图用MongoDb实现一个flask服务器,但我不知道如何进行 我看到有两个图书馆,PyMongo和Flask PyMongo。我不清楚我应该使用哪一种,或者我是否需要两者都使用。他们如何互操作等等 首先,我正在尝试连接到mongodb,我在后台运行它,每当我启动我的flask服务器时,我都可以看到连接,所以这一定能正常工作。PyMongo提供了使用db=client['test-databa

我是PyMongo和Flask的新手,不过我已经完成了Flask的教程,并且对它感到相当满意。我现在正试图用MongoDb实现一个flask服务器,但我不知道如何进行

我看到有两个图书馆,PyMongo和Flask PyMongo。我不清楚我应该使用哪一种,或者我是否需要两者都使用。他们如何互操作等等

首先,我正在尝试连接到mongodb,我在后台运行它,每当我启动我的flask服务器时,我都可以看到连接,所以这一定能正常工作。PyMongo提供了使用
db=client['test-database']
连接到特定数据库的方法。当使用
mongo=pymongo(app)
然后使用
mongo.db
访问数据库时,Flask pymongo似乎不知从何处提供了一个db连接

作为mongo的新手,这让我很困惑,我希望有人能给我一个清晰的答案,回答我所有的问题,网上搜索并没有显示很多关于flask pymongo library的结果


我确实看了这个问题:,但它没有为我澄清任何问题。

主要区别在于flask pymongo是pymongo的包装,可以在flask的应用程序环境中工作

您可以在flask应用程序配置对象中配置数据库连接

Flask pymongo还实现了pymongo之上的helper方法


例如:pymongo有
find()
方法,而flask pymongo有一个名为
find_或_404()
的扩展名,如果项目不存在,则会引发未找到异常,以此类推。

我没有将Mongo与flask一起使用,但您将要使用flask扩展名。与“标准”模块相比,
flask-*
模块通常存在一些小的差异。一般来说,它们是围绕核心模块的包装器,可以让它们更好地进行交互。例如,
flask-sqlalchemy
仍将安装普通的
sqlalchemy
,API稍有不同,但其底层的工作原理大致相同。好的,这确实有助于解释它。我认为最大的问题是不了解MongoDB,然后把
PyMongo
Flask PyMongo
扔给我。感谢您的帮助,我现在至少有了一个方向,我将阅读一些PyMongo文档,然后转到Flask PyMongo,我认为如果我先了解背景,包装将更容易理解。正如:
Flask PyMongo依赖于,并将为您安装最新版本的Flask(0.8或更高版本)和PyMongo(2.4或更高版本)
。我使用Flask Pymongo,我的同事只是Pymongo,因此我们考虑了可能的区别。我假设,尽管我没有测试过,Flask Pymongo将在多个URL到达服务器时,从同一个Flask web服务器多次访问mongodb连接。使用Pymongo可能需要通过编程来处理除非每个请求都有新的连接。我想Flask Pymongo只是自动与Flask的多用户方面集成。它们都应该包含在您的应用程序中。如果Pymngo不存在,Flask pymingo将无法工作。