We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 6619180 commit b7a4a75Copy full SHA for b7a4a75
1 file changed
app.py
@@ -0,0 +1,27 @@
1
+from celery import Celery, Task
2
+from flask import Flask
3
+
4
5
+def celery_init_app(app: Flask) -> Celery:
6
+ class FlaskTask(Task):
7
+ def __call__(self, *args: object, **kwargs: object) -> object:
8
+ with app.app_context():
9
+ return self.run(*args, **kwargs)
10
11
+ celery_app = Celery(app.name, task_cls=FlaskTask)
12
+ celery_app.config_from_object(app.config["CELERY"])
13
+ celery_app.set_default()
14
+ app.extensions["celery"] = celery_app
15
+ return celery_app
16
17
18
+if __name__ == '__main__':
19
+ app = Flask(__name__)
20
+ app.config.from_mapping(
21
+ CELERY=dict(
22
+ broker_url="db+sqlite:///celeryresults.sqlite3",
23
+ result_backend="sqlite:///celeryresults.sqlite3",
24
+ task_ignore_result=True,
25
+ ),
26
+ )
27
+ celery_app = celery_init_app(app)
0 commit comments