在哪里设置DEFAULT_DB_ALIAS?

时间:2014-02-19 13:02:45

标签: python django

我需要根据环境更改应用程序执行时使用的数据库配置。我有以下配置db:

DATABASES = {
    'localhost': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(PROJECT_VAR, 'data/localhost.sqlite3'),
    },
    'test': {
        'ENGINE': 'django.db.backends.mysql', 
        'NAME': 'novumaz',
        'USER': 'novumaz',
        'PASSWORD': 'novumaz',
        'HOST': '',
        'PORT': '',
    },
    'production': {
        'ENGINE': 'django.db.backends.mysql', 
        'NAME': 'set database name',
        'USER': 'set database user name',
        'PASSWORD': 'set database user password',
        'HOST': '',
        'PORT': '',
    },
}

尝试在wsgi.py和manage.py中设置它。他们没有工作。

2 个答案:

答案 0 :(得分:0)

这应该放在项目的settings.py'文件中 - https://docs.djangoproject.com/en/dev/topics/settings/

答案 1 :(得分:0)

此票行情: https://code.djangoproject.com/ticket/16989

“我不确定是什么让您认为DEFAULT_DB_ALIAS是设置,但不是。DEFAULT_DB_ALIAS是在django.db模块中定义的常量,它扩展为“默认”。”

根据django的文档: https://docs.djangoproject.com/en/2.2/ref/settings/#databases

“ DATABASES设置必须配置默认数据库;还可以指定任意数量的其他数据库。”

您的配置示例没有任何名为“默认”的数据库。