Python 在芹菜/Django中:找不到引用';控制';在芹菜中。任务。控制

Python 在芹菜/Django中:找不到引用';控制';在芹菜中。任务。控制,python,django,celery,Python,Django,Celery,我想在我的项目中使用芹菜。当我使用芹菜.task.control import revoke中的时,PyCharm高亮显示control并警告我无法在uuu init_uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu 但是,当我运行这个项目时,芹菜非常有效,调用任务或撤销任务都没有问题。我的问题是为什么PyCharm会警告我,将来有没有可能发生任何问题 芹菜: from

我想在我的项目中使用芹菜。当我使用芹菜.task.control import revoke中的
时,PyCharm高亮显示
control
并警告我
无法在uuu init_uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

但是,当我运行这个项目时,芹菜非常有效,调用任务或撤销任务都没有问题。我的问题是为什么PyCharm会警告我,将来有没有可能发生任何问题

芹菜:

from __future__ import absolute_import, unicode_literals
import os
from celery import Celery

# set the default Django settings module for the 'celery' program.
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'hamclassy.settings')

app = Celery('hamclassy')

# Using a string here means the worker doesn't have to serialize
# the configuration object to child processes.
# - namespace='CELERY' means all celery-related configuration keys
#   should have a `CELERY_` prefix.
app.config_from_object('django.conf:settings', namespace='CELERY')

# Load task modules from all registered Django app configs.
app.autodiscover_tasks()
项目/_初始_uuu.py:

from __future__ import absolute_import, unicode_literals

# This will make sure the app is always imported when
# Django starts so that shared_task will use this app.
from .celery import app as celery_app

__all__ = ['celery_app']

当您在PyCharm中使用一个Python虚拟环境(或仅使用本地Python),而芹菜工人使用另一个Python环境时,通常会发生这种情况。如果您在PyCharm使用的环境中正确安装芹菜,您将不会看到该警告


只要您希望在其中运行芹菜工人的环境已正确安装芹菜,您就可以了,您可以忽略PyCharm警告,但我建议您也在PyCharm项目的环境中安装芹菜,以享受PyCharm代码分析的好处,等等。

控制模块位于not Cellery.task中。以设置“撤销”的方式导入“撤销”将不起作用

我认为它可以工作,因为日志中的任务没有执行(但我不确定)。但是,当我使用芹菜.app.control导入控件中的
并使用
Cntrol.revoke(task\u id=myTaskId)
时,会出现错误:
revoke()缺少一个必需的位置参数:“self”
,但是如果芹菜安装在相同的环境中,代码仍然运行,但仍然会出现错误。。。。