如何通过Django正确查询mongoDB?
目前,我正试图通过Django应用程序从数据库返回简单查询(目前是MongoDB,但我过去使用过MSSQL 2008) 我的问题是关于Django数据库的一般设置。例如,如果我在后端使用pymongo建立连接并返回我正在查找的集合,那么django Unrel和mongodb引擎到底在做什么?如果我返回查询的数据(例如在views.py中),并通过我的一个模板进行渲染,那么在settings.py中过度设置数据库是否有缺点 以下是我当前在views.py中返回查询数据的方式:如何通过Django正确查询mongoDB?,django,mongodb,django-nonrel,Django,Mongodb,Django Nonrel,目前,我正试图通过Django应用程序从数据库返回简单查询(目前是MongoDB,但我过去使用过MSSQL 2008) 我的问题是关于Django数据库的一般设置。例如,如果我在后端使用pymongo建立连接并返回我正在查找的集合,那么django Unrel和mongodb引擎到底在做什么?如果我返回查询的数据(例如在views.py中),并通过我的一个模板进行渲染,那么在settings.py中过度设置数据库是否有缺点 以下是我当前在views.py中返回查询数据的方式: from djan
from django.shortcuts import render_to_response
from pymongo import MongoClient
def bar(request):
client = MongoClient()
db = client['myDB']
collection = db.myCollection.find({"date":"2013-10-23"})
return render_to_response("index.html", {"returnedData" : collections})
您的代码的缺点是,您需要支付设置MongoClient和在每次请求时建立到服务器的连接的费用。您应该只创建一个MongoClient,并在应用程序的整个生命周期中使用它。如果您测试示例代码的性能,并将其与创建单个MongoClient的性能进行一次比较,那么当您的应用程序启动时,我希望您会看到您的代码要慢几个数量级