这是
settings.pyimport djcelery
djcelery.setup_loader()
CELERY_TIMEZONE = 'Asia/Shanghai'
BROKER_URL = 'django://'
CELERY_RESULT_BACKEND='djcelery.backends.database:DatabaseBackend'
CELERYBEAT_SCHEDULER = ‘ djcelery.schedulers.DatabaseScheduler'
INSTALLED_APPS = (
……
'djcelery',
'kombu.transport.django',
)
我在本地跑:
python
manage.py runserver
celery -A proj worker -l info
python
manage.py celery beat
可以正常的在 admin 中看到 djcelery ,并添加、编辑 task ,任务可以正常的执行并得到正确的结果
我把代码同步到服务器( django+nginx+fcgi ),运行( python
manage.py runfcgi method=threaded host=127.0.0.1 port=9001 )后却发现在 admin 中看不到 djcelery !我确信
settings.py 文件与上面贴的一致,执行过 python
manage.py migrate 而且我在服务器的本地执行 python
manage.py runserver 的话,在 http://127.0.0.1:8000/admin/是可以看到 djcelery 的。
在服务器本地可以看见 djcelery ,真正跑服务器时又看不到。至此我怀疑是不是静态文件使用之类的问题,我在服务器执行 python
manage.py collectstatic ,结果 static 文件夹多了一个 djcelery 的 style.css 文件,但是在 admin 中还是看不到 djcelery 。
这是
settings.py 中有关静态文件的配置,我不太清楚这些信息对于诊断问题是否有帮助。
STATIC_URL = '/static/'
STATICFILES_DIRS = (
os.path.join(BASE_DIR, "static"),
)
STATIC_ROOT = '/static/'
MEDIA_ROOT = os.path.join(BASE_DIR, "appmedia")
TEMPLATE_DIRS = (
os.path.join(BASE_DIR, 'templates'),
)
如果需要更多信息,我继续贴。先谢谢大家了
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
https://www.v2ex.com/t/242022
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.