在Django项目中初始化MongoDB连接的位置?

时间:2014-05-03 15:55:32

标签: django mongodb pymongo

我想知道我应该在Django项目中初始化MongoDB连接。

目前我正在view.py中使用view函数初始化客户端和db:

import pymongo

from django.conf import settings


client = pymongo.MongoClient(settings.MONGO_URI)
db = client.get_default_database()


def some_view(request):
    pass

但是我还需要在models.py和Django信号中使用MongoDB。你有什么建议?

2 个答案:

答案 0 :(得分:1)

也许settings.py?甚至根__init__.py?然后,您可以在任何需要的地方导入clientdb

答案 1 :(得分:1)

我决定使用project / mongodb.py(与settings.py相同的文件夹)

import pymongo

from django.conf import settings


client = pymongo.MongoClient(settings.MONGO_URI)
mongodb = client.get_default_database()

我正在为本地和制作使用两个不同的设置文件。因此,这种方法可以使用依赖于环境的设置,同时使我能够从项目的任何位置访问mongodb变量。