从租户模式访问 public 模式,Django-Tenant

Access public schema from tenant schema, Django-Tenant

我目前正在将 Django-Tenant-schema 用于多租户应用程序。 在使用租户架构时是否可以访问 public 架构? 我可以使用以下行从 public 访问租户数据库:

with tenant_context(tenant):

但是当我在仅使用 tenant_schema 的 django 应用程序中时,我如何才能在我的 public 模式中访问我的客户端模型?

谢谢!

好吧,您可以通过将包含您的客户端模型的应用程序添加到您的 SHARED_APPS 设置来实现。在此之后,您可以使用 'schema_context' 在 public 架构下创建用户,如下所示:

from tenant_schemas.utils import schema_context
with schema_context('public'):
    # create user

您还可以通过在 public 模式中创建超级用户来从 public 模式访问您的客户端模型。尝试...

$ python manage.py tenant_command createsuperuser --schema=public

然后登录到您的 public 租户管理员,您可以从中完全访问 public 架构中的客户端模型。

注意:在您的 public 模式中创建用户之前,您必须首先使用您的客户端模型创建 public 模式,如 https://django-tenants.readthedocs.io/en/latest/use.html#creating-a-tenant

中所述

提示:'shell' 命令将帮助您创建架构 (public)。