Django 5 postgres 超级用户登录失败

问题描述 投票:0回答:1

我创建了一个 Django 项目 SQLite。我决定从 SQLite 迁移到 PostgreSQL。所有迁移都有效。我成功创建了超级用户,但是当我尝试登录管理员时,它说找不到该用户。没有错误 这是用户模型

from django.db import models
from django.contrib.auth.models import AbstractUser

# Create your models here.


class CustomUser(AbstractUser):
    """
    Class for creating custom users. There are 3 user types in this class
    """
    USER_TYPE_CHOICES = (
        ('manager', 'Manager'),
        ('supervisor', 'Supervisor'),
        ('employee', 'Employee'),
    )

    user_type = models.CharField(max_length=20, choices=USER_TYPE_CHOICES)
    is_active = models.BooleanField(default=False)
    name = models.CharField(max_length=255)
    email = models.EmailField(unique=True)
    national_id = models.CharField(max_length=20, unique=True)

    def __str__(self):
        return self.email

    # Provide a unique username or remove the unique constraint from email
    def save(self, *args, **kwargs):
        if not self.username:
            self.username = self.name  # Use email as username or provide a unique username
        super().save(*args, **kwargs)

我尝试登录管理员。它说找不到该用户。我使用了电子邮件和用户名来确定,但仍然找不到用户。
这是点冻结:

pip freeze

asgiref==3.7.2
attrs==23.1.0
bcrypt==4.1.2
Django==5.0
django-cors-headers==4.3.1
django-filter==23.5
djangorestframework==3.14.0
djangorestframework-simplejwt==5.3.1
drf-spectacular==0.27.0
Faker==21.0.0
inflection==0.5.1
jsonschema==4.20.0
jsonschema-specifications==2023.11.2
Markdown==3.5.1
mysqlclient==2.2.3
psycopg2==2.9.9
PyJWT==2.8.0
python-dateutil==2.8.2
pytz==2023.3.post1
PyYAML==6.0.1
referencing==0.32.0
rpds-py==0.15.2
six==1.16.0
sqlparse==0.4.4
typing_extensions==4.9.0
uritemplate==4.1.1
django postgresql sqlite
1个回答
0
投票

手动查看表格后,我发现用户默认处于非活动状态。所以当我不活跃时我无法登录。

© www.soinside.com 2019 - 2024. All rights reserved.