I had to recreate User model. I have added custom phone and zip_code fields to the model. But I am encountering Manager isn’t available; ‘auth.User’ has been swapped for ‘main.User’ error.
This is my settings.py:
AUTH_USER_MODEL = 'main.User'
This is my models.py:
class User(AbstractUser):
phone = models.IntegerField(blank=True, null=True)
zip_code = models.IntegerField(blank=True, null=True)
class Meta(AbstractUser.Meta):
swappable = "AUTH_USER_MODEL"
User = get_user_model()
This is my views.py where I am encountering an error:
@api_view(['POST'])
@permission_classes([AllowAny])
def register(request):
try:
first_name = request.data.get('first_name')
last_name = request.data.get('last_name')
phone = request.data.get('phone')
username = request.data.get('username')
password = request.data.get('password')
confirm_password = request.data.get('confirm_password')
if password == confirm_password:
User.objects.create_user(
username=username,
password=password,
first_name=first_name,
last_name=last_name,
phone=phone,
)
user = authenticate(username=username, password=password)
login(request, user)
return Response({'status':True})
else:
return Response({'status':False})
except Exception as e:
print(e)
return Response({'status':False})
New contributor
Shomalik Davlatov Zane is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.