【问题标题】:How do I properly query mongoDB through Django?如何通过 Django 正确查询 mongoDB?
【发布时间】:2013-12-05 01:56:49
【问题描述】:

目前,我正在尝试通过 Django 应用程序从数据库(目前是 MongoDB,但我过去使用过 MSSQL 2008)返回简单查询。

我的问题是关于一般的 Django 数据库设置。例如,如果我在后端使用 pymongo 来建立连接并返回我正在寻找的集合,那么 django-nonrel 和 mongodb-engine 到底在做什么?如果我返回了查询的数据(例如在views.py 中)并通过我的一个模板进行了渲染,那么与在settings.py 中设置数据库相比,这样做有什么缺点吗?

这是我目前在views.py中返回查询数据的方式:

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})

【问题讨论】:

    标签: django mongodb django-nonrel


    【解决方案1】:

    您的代码的缺点是您需要支付设置 MongoClient 并为每个请求建立与服务器的连接的成本。您应该只创建一个 MongoClient 并在应用程序的整个生命周期中使用它。如果您测试示例代码的性能并将其与创建单个 MongoClient 的性能进行比较,当您的应用程序启动时,我希望您会发现您的代码慢了几个数量级。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-11-26
      • 2011-11-05
      • 2021-04-28
      • 1970-01-01
      • 1970-01-01
      • 2020-09-22
      • 2023-03-14
      • 1970-01-01
      相关资源
      最近更新 更多