我在使用django-constance时遇到问题。

我已经按照以下步骤操作:https://django-constance.readthedocs.io/en/latest/index.html


pip install "django-constance[database]"
'constance''constance.backends.database',添加到INSTALLED_APPS
将以下内容放置在设置文件的底部(它不是以setings.py命名,而是以common.py命名):

CONSTANCE_BACKEND = 'constance.backends.database.DatabaseBackend'
CONSTANCE_DATABASE_PREFIX = 'constance:my_app_name:'
CONSTANCE_CONFIG = {
    'THE_ANSWER': (42,
                   'Answer to the Ultimate Question of Life, The Universe, and Everything'),
}

然后跑python manage.py migrate database


但是没有创建用于动态设置的表。当我尝试列出constance设置时会发生以下情况:

$ python manage.py constance list
...
django.db.utils.ProgrammingError: relation "constance_config" does not exist
LINE 1: ...ce_config"."key", "constance_config"."value" FROM "constance...



我正在运行Python 3.5.2,Django 1.11.3和django-constance 2.0.0。

有什么线索吗?

最佳答案

我不确定为什么,但是这是起作用的:


存在database初始迁移

$ python manage.py showmigrations database
database
[X] 0001_initial


但是桌子本身不是

\dt *constance*
No matching relations found.

所以我从django_migrations删除了该迁移

delete from django_migrations where app = 'database';

重新进行迁移

python manage.py migrate database



就是这样。 constance list表现为:

$ python manage.py constance list
THE_ANSWER  42

关于python - Django-constance:关系“constance_config”不存在,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45415944/

10-12 17:01