Q1.
我正在运行本地服务器。它运行没有任何问题。我运行pip install -r requirements.txt
以确保在再次运行它之前拥有所有软件包。现在我不断收到以下错误:
django.db.utils.ProgrammingError: relation "celery_taskmeta" does not exist
SO上有一个相当古老的相关问题,它建议运行manage.py migrate
但运行它也返回相同的错误。
以下是我requirements.txt
的内容:
amqp==1.4.6
anyjson==0.3.3
apns-clerk==0.1.1
arrow==0.4.1
backports.ssl-match-hostname==3.4.0.2
billiard==3.3.0.19
bootstrap-admin==0.3.0
boto==2.25.0
celery==3.1.17
certifi==14.5.14
cffi==0.8.6
cryptography==0.7.1
Cython==0.19.1
dill==0.2.1
Django==1.6.1
django-appconf==0.6
django-bower==4.8.1
django-celery==3.1.0
django-compressor==1.3
django-debug-toolbar==1.2
django-extensions==1.4.9
django-gravatar2==1.1.3
django-picklefield==0.3.1
django-resized==0.2.4
django-ses==0.6.0
djangorestframework==2.3.8
enum34==1.0.4
gcm-client==0.1.4
Jinja2==2.7.3
joblib==0.8.0a3
kombu==3.0.24
line-profiler==1.0b3
MarkupSafe==0.23
mlpy==3.5.0
mock==1.0.1
nose==1.3.4
numpy==1.8.0
Pillow==2.7.0
psycopg2==2.4.6
pyasn1==0.1.7
pycparser==2.10
pyOpenSSL==0.14
pyparsing==2.0.3
python-dateutil==2.2
python-memcached==1.48
python-slugify==0.1.0
pytz==2014.10
pyzmq==14.4.1
raven==3.3.7
requests==2.5.1
scipy==0.13.3
six==1.8.0
South==0.7.6
sqlparse==0.1.11
tornado==4.0.2
Unidecode==0.4.17
yattag==1.0.7
我不确定该怎么做才能解决此问题。
它是旧版本和新版本的 Django 和 Celery 之间的不兼容吗?我的最新安装是两周前的,那么过去两周是否有可能导致此问题的版本?还是完全无关的东西?
问题 2.
我是初学者,所以我什至不确定celery_taskmeta
是什么以及它的意义是什么。
本例中的问题已通过运行以下命令解决:
python manage.py syncdb --all
这个问题指出了 django 和芹菜之间的版本不匹配,但重新安装它们并没有改变任何东西。这似乎是旧版本中的问题(这里也是)
其他消息来源指出,这可能有效:
python manage.py migrate djcelery
或
python manage.py syncdb
python manage.py migrate
但事实证明,--all
选项对于解决这个问题至关重要。这是最有帮助的来源。
我希望这对任何人都有用