从租户模式访问 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)。
我目前正在将 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)。