【发布时间】:2018-10-13 17:13:13
【问题描述】:
我希望租户可以使用管理模块(使用django-tenant-schema)。
我的 settings.py 应用部分:
# Application definition
SHARED_APPS = (
'tenant_schemas', # mandatory, should always be before any django app
'customers', # you must list the app where your tenant model resides in
# 'django.contrib.sites',
# everything below here is optional
)
TENANT_APPS = (
'django.contrib.contenttypes',
# your tenant-specific apps
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
)
INSTALLED_APPS = (
'tenant_schemas', # mandatory, should always be before any django app
'customers',
# 'django.contrib.sites', #using this will cause error - see my stackoverflow question
'django.contrib.auth',
'django.contrib.admin',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
)
我设置了 2 个架构(租户 1 和公共)。创建了超级用户,可以看到超级用户是在tenant1 模式中创建的。但是,当尝试在tenant1.domain.com/admin 登录时,出现登录屏幕但输入凭据后不断出现:
/admin/login/ 关系“auth_user”处的ProgrammingError 不存在
看起来它没有选择我的tenant1 架构? 我必须在配置中更改什么?
【问题讨论】:
-
是否安装了租户中间件?它负责协商调用哪个租户并连接到正确的架构。
-
谢谢。这样就解决了问题。如何将此标记为解决方案?
-
您可以将下面的答案标记为正确:)
标签: django