Мои модели:
Код: Выделить всё
class MyUser(AbstractUser):
class Meta:
managed = True
db_table = 'users\".\"user' # gives a problem
email = models.EmailField(_("email address"), unique=True)
USERNAME_FIELD = "email"
REQUIRED_FIELDS = ["username"]
objects = MyUserManager()
class MyProfile(models.Model):
class Meta:
managed = True
db_table = 'users\".\"profile' # gives a problem
user = models.OneToOneField(settings.AUTH_USER_MODEL, on_delete=models.CASCADE)
name = models.CharField(max_length=200, default="Name")
surname = models.CharField(max_length=200, default="Surname")
Код: Выделить всё
class MyUserManager(BaseUserManager):
def create_user(self, email, password, **extra_fields):
if not email:
raise ValueError(_("Email required"))
email = self.normalize_email(email)
user = self.model(email=email, **extra_fields)
user.set_password(password)
user.save()
return user
def create_superuser(self, email, password, **extra_fields):
extra_fields.setdefault("is_staff", True)
extra_fields.setdefault("is_superuser", True)
extra_fields.setdefault("is_active", True)
if extra_fields.get("is_staff") is not True:
raise ValueError(_("is_staff=True required"))
if extra_fields.get("is_superuser") is not True:
raise ValueError(_("is_superuser=True required"))
return self.create_user(email, password, **extra_fields)
Код: Выделить всё
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': "djangotest",
'USER': "postgres",
'PASSWORD': "********",
'HOST': "localhost",
'PORT': "5432",
'OPTIONS': {
'options': '-c search_path=public,users'
}
Код: Выделить всё
ROUTED_MODELS_SCHEMA = [MyUser]
class DataBaseRouter(object):
def db_for_read(self, model, **hints):
if model in ROUTED_MODELS_SCHEMA:
return 'users'
return None
def db_for_write(self, model, **hints):
if model in ROUTED_MODELS_SCHEMA:
return 'users'
return None
Я пытался найти ответ на разных сайтах и менял разные файлы проекта. например dbrouter.py и т. д. но эта проблема все еще существует. Подскажите, пожалуйста, какие действия, что мне делать. Или ссылку на реально работающий проект на GitHub для его анализа. Спасибо.
Подробнее здесь: https://stackoverflow.com/questions/792 ... n-django-5