'AbstractBaseUser' не определено - PullRequest
0 голосов
/ 30 апреля 2020

Я пытаюсь изменить модель пользователя по умолчанию в Models.py путем импорта AbstractBaseUser, но получаю следующую ошибку:

NameError: имя 'AbstractBaseUser' не определено

Models.py

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

# Create your models here.


class User(AbstractBaseUser, PermissionsMixin):

    first_name = models.CharField(max_length=15)
    last_name = models.CharField(max_length=15)
    email = models.EmailField(unique=True, max_length=254)
    mobile = models.IntegerField(unique=True)
    verified = models.BooleanField(default=False)
    date_joined = models.DateTimeField(default=timezone.now)
    is_active = models.BooleanField(default=True)
    is_admin = models.BooleanField(default=False)

Также, как я могу зарегистрировать URL этого приложения в моем основном приложении?

Urls.py

urlpatterns = [
               path('create-user/', UserCreateAPIView),
               ]

Main Urls.py

urlpatterns = [
    path('admin/', admin.site.urls),
    path('api/token/', TokenObtainPairView.as_view(), name='token_obtain_pair'),
    path('api/token/refresh/', TokenRefreshView.as_view(), name='token_refresh'),
]

1 Ответ

1 голос
/ 30 апреля 2020

Модель называется AbstractUser, и вы использовали AbstractBaseUser в качестве базового класса.

Просто измените его на следующее:

from django.contrib.auth.models import AbstractUser


class User(AbstractUser, PermissionsMixin):
...