是否可以通过 management.call_command 创建一个 django_tenant_superuser?

Is it possible to create a django_tenant_superuser via management.call_command?

我正在使用 django-tenant 构建一个多租户项目。

我遇到的问题是“密码”不是有效的标志选项。

    management.call_command(
        'create_tenant_superuser', 
        interactive = False,
        username = "user"
        password = "password"
        ) 

给出错误:

TypeError: Unknown option(s) for create_tenant_superuser command: password Valid options are: ...

您可以使用 schema_context [django-tenants docs] 上下文管理器通过提供架构名称来查询特定架构:

from django.contrib.auth import get_user_model
from django_tenants.utils import schema_context


UserModel = get_user_model()

with schema_context(schema_name):
    UserModel.objects.create_superuser(username="user", password="password")