【问题标题】:Django Database Settings : Can we keep default database as empty dict? [Django 1.8]Django 数据库设置:我们可以将默认数据库保留为空字典吗? [姜戈 1.8]
【发布时间】:2017-03-04 17:49:18
【问题描述】:

我收到以下错误:

ImproperlyConfigured:settings.DATABASES 配置不正确。请提供 ENGINE VALUE。

我的 settings.py 看起来像:

DATABASES = {
'default': {
},
'postgres': {
    'ENGINE': 'django.db.backends.postgresql_psycopg2',
    'NAME': 'app',
    'USER':'user',
    'HOST': 'localhost',
},
'cassandra': {
    'ENGINE': 'django_cassandra_engine',
    'NAME': 'app',
    'HOST': '127.0.0.1',
    'OPTIONS': {
        'replication': {
            'strategy_class': 'SimpleStrategy',
            'replication_factor': 1
        },
        'connection': {
            'consistency': ConsistencyLevel.LOCAL_ONE,
            'port': 9042,
            'retry_connect': True
            # + All connection options for cassandra.cluster.Cluster()
        },
        'session': {
            'default_timeout': 10,
            'default_fetch_size': 10000
            # + All options for cassandra.cluster.Session()
        }
    }
}
}

runserver、syncdb 工作正常。访问索引页面时弹出错误。

是不是我做错了什么?

提前致谢:)

/萨哈

【问题讨论】:

  • 你不能整体删除default吗?
  • 我也想过。但显然这是不可能的。它需要一个默认值,无论是否为空。如果我删除默认值,我会得到 KeyError: 'default'

标签: django django-settings


【解决方案1】:

DATABASES 设置必须配置一个default 数据库;还可以指定任意数量的附加数据库。

default 设置不能为空。

这是来自 Django 文档。 Django settings documentations

【讨论】:

    猜你喜欢
    • 2020-08-01
    • 2011-09-03
    • 2012-05-29
    • 2020-02-21
    • 2015-07-15
    • 2021-01-16
    • 2015-08-30
    • 2020-08-05
    • 2014-07-20
    相关资源
    最近更新 更多