将django用户链接到站点框架中的特定站点
我已经在我的项目中设置了Django站点框架, 实际上,我想将Django用户合并到那个特定的站点将django用户链接到站点框架中的特定站点,django,python-3.x,sites,django-sites,Django,Python 3.x,Sites,Django Sites,我已经在我的项目中设置了Django站点框架, 实际上,我想将Django用户合并到那个特定的站点 我想实现的是,当用户从特定站点或子站点注册并使用site framework注册时,该用户必须链接到该特定站点,以便我们可以限制用户使用其关联站点凭据登录到另一个站点。在不同站点的设置文件中,您可以指定单独的“用户”数据库 据 我们绑定模型 ` ` 所以,若我们为不同的站点使用不同的数据库,那个么这并没有什么意义,因为站点表也会为不同的站点更改 我需要一个数据库,但不同的用户根据网站像上述模型使用
我想实现的是,当用户从特定站点或子站点注册并使用site framework注册时,该用户必须链接到该特定站点,以便我们可以限制用户使用其关联站点凭据登录到另一个站点。在不同站点的设置文件中,您可以指定单独的“用户”数据库 据 我们绑定模型 ` ` 所以,若我们为不同的站点使用不同的数据库,那个么这并没有什么意义,因为站点表也会为不同的站点更改
我需要一个数据库,但不同的用户根据网站像上述模型使用外键这可能是个好主意,但有一个问题,请参考我的答案
#in site1 settings.py
DATABASES = {
'default': {
'NAME': 'app_data',
'ENGINE': 'django.db.backends.mysql',
'USER': 'mysql_user',
'PASSWORD': 'priv4te'
},
'users': {
'NAME': 'user_data_site1',
'ENGINE': 'django.db.backends.mysql',
'USER': 'mysql_user',
'PASSWORD': 'priv4te'
}
}
#in site2 settings.py
DATABASES = {
'default': {
'NAME': 'app_data',
'ENGINE': 'django.db.backends.mysql',
'USER': 'mysql_user',
'PASSWORD': 'priv4te'
},
'users': {
'NAME': 'user_data_site2',
'ENGINE': 'django.db.backends.mysql',
'USER': 'mysql_user',
'PASSWORD': 'priv4te'
}
}
from django.db import models
from django.contrib.sites.models import Site
class Article(models.Model):
headline = models.CharField(max_length=200)
# ...
site = models.ForeignKey(Site, on_delete=models.CASCADE)