我在我的项目中设置了Django站点框架, 实际上,我想将Django用户与该特定网站结合起来
我想要实现的是,当用户从注册到网站框架的特定网站或子网站注册时,该用户必须链接到该特定网站,以便我们可以限制用户使用其关联网站凭据登录到另一个网站
答案 0 :(得分:1)
在不同网站的设置文件中,您可以指定单独的“用户”数据库https://docs.djangoproject.com/en/1.10/topics/db/multi-db/
#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'
}
}
答案 1 :(得分:0)
根据https://docs.djangoproject.com/en/1.10/ref/contrib/sites/
我们绑定模型 `
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)
`
所以,如果我们为不同的网站使用不同的数据库,则没有任何意义,因为网站表也会针对不同的网站进行更改
我需要一个数据库但是根据网站使用外键
来区分用户