Как из существующей модели сделать базового пользователя
В models.py прописана бд с сущностью Account, как из этой сущности сделать базового пользователя для входа в аккаунт.
class Account(models.Model):
email = models.EmailField()
FML = models.TextField()
login = models.TextField()
phone = models.IntegerField()
def __str__(self):
return self.login
Так же на эту сущность ссылается другая:
class Investor(models.Model):
id_Account = models.ForeignKey(Account, on_delete = models.CASCADE)
id_ViewClient = models.ForeignKey(ViewClient, on_delete= models.PROTECT)
name = models.TextField()
def __str__(self):
return self.name
Пробовал через setting писать что ээто базовый пользователь, но не получилось
Ответы (1 шт):
Автор решения: Amentes
→ Ссылка
Для того, чтобы ваша модель была базовой моделью пользователя желательно (не уверен, что обязательно), чтобы эта модель наследовалась от models.AbstractUser
, а так же её нужно зарегистрировать в settings.py.
Модель AbstractUser по стандарту имеет следующие поля:
- username
- first_name
- last_name
- is_staff
- is_active
- date_joined
- password
- last_login
- is_superuser
- groups
- user_permissions
А для того чтобы зарегистрировать модель нужно в файле settings.py в конце написать:
AUTH_USER_MODEL = 'приложение_с_моделью.название_модели'
LOGIN_URL = 'ссылка_на_страницу_авторизации' #'/user/login' например
Может конечно для этого есть другие способы, но я использую этот.