是否可以将 django-celery-beat 与 django-tenant 一起使用?

Is it possible to use django-celery-beat with django-tenant?

我正在使用 celery 来安排任务。到目前为止一切都很好,包括托管在 AWS 上。但是,我决定使用 django-tenant 将我的单应用程序转换为多租户。这样,我就可以完美地创建子域了。

./manage.py create_tenant

然而,当 运行 执行命令 celery -A myproject worker -B 时,尽管没有向我显示任何错误,但在我看来他不能 运行 用于创建的模式(只用一个测试已创建)。

我尝试使用 python manage.py tenant_command celery worker -B --loglevel = info --schema = myschema 指定模式 但我收到以下错误:

raise CommandError ("Unknown command:% r"% argv [2])
django.core.management.base.CommandError: Unknown command: 'celery'

如果有人能帮助我,我真的很感激! 如果可以 运行 特定模式的命令,是否也可以全局 运行 所有创建的模式?谢谢!

您应该扩展 celery Task 实现并注入 db_schema 并改为使用它

不过不用重新发明轮子用也行 https://github.com/maciej-gol/tenant-schemas-celery