[Django] Manager isn’t available; ‘auth.User’ has been swapped for ‘accounts.User’ 에러

Donnis Dev-note
2 min readMar 4, 2020

--

#models.py
from django.contrib.auth.models import AbstractUser
class User(AbstractUser):
....

위와같이 AbstractUser를 통해서 User모델을 커스텀하여 사용하고 있었습니다.

from django.contrib.auth.forms import UserCreationForm
from django import forms
class SignupForm(UserCreationForm):
class Meta(UserCreationForm.Meta):
fields = ['username', 'email', 'first_name', 'last_name']

Forms.py에서 UserCreationForm을 임포트해와서 사용한 후 signup 예제를 실행해보는데

Manager isn't available; 'auth.User' has been swapped for 'accounts.User'

위의 오류가 발생했습니다.

위의 오류는 UserCreationForm은 auth.User에서 사용하는 폼이며, 저는 User모델을 커스텀해서 사용했기 때문에,

from .models import User
class SignupForm(UserCreationForm):
class Meta(UserCreationForm.Meta):
model = User
fields = ['username', 'email', 'first_name', 'last_name']

커스텀한 models.py의 User 모델을 직접 가지고와서 Meta 클래스안에 model로 지정해주셔야 합니다~~

--

--

Donnis Dev-note
Donnis Dev-note

No responses yet