AttributeError:“Flask”对象没有属性“user_options” - python

我正在尝试通过以下文档设置此基本示例:

http://flask.pocoo.org/docs/patterns/celery/

但是到目前为止,我仍然收到以下错误:

AttributeError:“Flask”对象没有属性“user_options”

我正在使用芹菜3.1.15。

from celery import Celery

def make_celery(app):
    celery = Celery(app.import_name, broker=app.config['CELERY_BROKER_URL'])
    celery.conf.update(app.config)
    TaskBase = celery.Task
    class ContextTask(TaskBase):
        abstract = True
        def __call__(self, *args, **kwargs):
            with app.app_context():
                return TaskBase.__call__(self, *args, **kwargs)
    celery.Task = ContextTask
    return celery

例:

from flask import Flask

app = Flask(__name__)
app.config.update(
    CELERY_BROKER_URL='redis://localhost:6379',
    CELERY_RESULT_BACKEND='redis://localhost:6379'
)
celery = make_celery(app)


@celery.task()
def add_together(a, b):
    return a + b

回溯错误:

Traceback (most recent call last):
  File "/usr/local/bin/celery", line 11, in <module>
    sys.exit(main())
  File "/usr/local/lib/python2.7/dist-packages/celery/__main__.py", line 30, in main
    main()
  File "/usr/local/lib/python2.7/dist-packages/celery/bin/celery.py", line 81, in main
    cmd.execute_from_commandline(argv)
  File "/usr/local/lib/python2.7/dist-packages/celery/bin/celery.py", line 769, in execute_from_commandline
    super(CeleryCommand, self).execute_from_commandline(argv)))
  File "/usr/local/lib/python2.7/dist-packages/celery/bin/base.py", line 305, in execute_from_commandline
    argv = self.setup_app_from_commandline(argv)
  File "/usr/local/lib/python2.7/dist-packages/celery/bin/base.py", line 473, in setup_app_from_commandline
    user_preload = tuple(self.app.user_options['preload'] or ())
AttributeError: 'Flask' object has no attribute 'user_options'

参考方案

“基于Flask Celery的后台任务”页面(http://flask.pocoo.org/docs/patterns/celery/)建议这样做来启动celery:
celery -A your_application worker
your_application字符串必须指向创建celery对象的应用程序包或模块。

假定代码驻留在application.py中,显式指向celery对象(而不仅仅是模块名称)避免了该错误:
celery -A application.celery worker

AttributeError:模块“ tensorflow”没有属性“ keras” - python

最初使用下面的代码加载CIFAR-10数据集。(x_train, y_train), (x_test, y_test) = tf.keras.datasets.cifar10.load_data() 但是,将Keras安装到环境后,运行上述行会导致错误:>>> AttributeError: module 'tensorflow&…

AttributeError:模块“ attr”没有属性“ s” - python

>>> import attr >>> @attr.s ... class SmartClass(object): ... a=attr.ib() ... b=attr.ib() ... Traceback (most recent call last): File "<stdin>", l…

Python GPU资源利用 - python

我有一个Python脚本在某些深度学习模型上运行推理。有什么办法可以找出GPU资源的利用率水平?例如,使用着色器,float16乘法器等。我似乎在网上找不到太多有关这些GPU资源的文档。谢谢! 参考方案 您可以尝试在像Renderdoc这样的GPU分析器中运行pyxthon应用程序。它将分析您的跑步情况。您将能够获得有关已使用资源,已用缓冲区,不同渲染状态上…

创建芹菜任务的不同方法之间的区别 - python

通过查看创建芹菜任务的不同方法,我感到非常困惑。从表面上看,它们都是一样的,所以,有人可以解释一下两者之间的区别是什么。1。from myproject.tasks import app @app.task def foo(): pass 2。from celery import task @task def foo(): pass 3。from celer…

Python:图像处理可产生皱纹纸效果 - python

也许很难描述我的问题。我正在寻找Python中的算法,以在带有某些文本的白色图像上创建皱纹纸效果。我的第一个尝试是在带有文字的图像上添加一些真实的皱纹纸图像(具有透明度)。看起来不错,但副作用是文本没有真正起皱。所以我正在寻找更好的解决方案,有什么想法吗?谢谢 参考方案 除了使用透明性之外,假设您有两张相同尺寸的图像,一张在皱纹纸上明亮,一张在白色背景上有深…