Django之python3 manage.py celery worker --loglevel=info报错

继上篇文章 <<Django之celery报错>>解决后, 执行python3 manage.py celery worker –loglevel=info 再次报错:

...(前面一堆报错)
  File "/home/python/.virtualenvs/py_django/lib/python3.6/site-packages/djcelery/management/base.py", line 60, in CeleryCommand
    options = BaseCommand.option_list
AttributeError: type object 'BaseCommand' has no attribute 'option_list'

查询资料, 参考: 解决问题链接. 发现是:

BaseCopMang.Optudio列表在Django 1.8中被弃用,在Django 1.10中被删除。看起来Django扩展已经更新,
但是从那时起还没有新的版本。
您可以尝试从主分支安装Django扩展,但最好使用Django的最新版本,当前版本为1.92.2。Django 1.10尚未发布,
并且仍在开发中。

发现应该是Django版本问题.


解决办法:

根据报错, 打开/home/python/.virtualenvs/py_django/lib/python3.6/site-packages/djcelery/management/base.py

将第60行代码注释掉:

这里写图片描述
再次执行python3 manage.py celery worker –loglevel=info, 但是出现如下报错:

  File "/home/python/.virtualenvs/py_django/lib/python3.6/site-packages/djcelery/management/commands/celery.py", line 15, in Command
    base.get_options() +
AttributeError: type object 'CeleryCommand' has no attribute 'options'

打开文件: /home/python/.virtualenvs/py_django/lib/python3.6/site-packages/djcelery/management/commands/celery.py,

将第14-16行注释掉:

这里写图片描述

再次执行python3 manage.py celery worker –(两个-)loglevel=info, 不再报错:

这里写图片描述

猜你喜欢

转载自blog.csdn.net/qq_38038143/article/details/80286408