首页 > 解决方案 > 经理不可用;'auth.User' 已替换为 'accounts.CustomUser'

问题描述

我试图将数据添加到数据库中。但是我得到了这样的错误。这里我使用了 Django 用户模型。任何人都可以提出解决这个问题的解决方案。

模型.py

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

TYPE_CHOICES =(
("individual", "Individual"),
("company", "Company"),
)

class CustomUser(AbstractUser):
    type = models.CharField(choices=TYPE_CHOICES,max_length=20)
    phone_number = models.CharField(max_length=50)

表格.py

from django import forms
from django.contrib.auth.models import User
from django.contrib.auth.forms import UserCreationForm

TYPE_CHOICES =(
    ("individual", "Individual"),
    ("company", "Company"),
)


class UserForm(UserCreationForm):
    first_name = forms.CharField(max_length=50)
    last_name = forms.CharField(max_length=50)
    email = forms.CharField(max_length=100)
    phone_number = forms.CharField(max_length=50)
    type = forms.ChoiceField(choices=TYPE_CHOICES)

    class Meta:
        model = User
        fields = 
['first_name','last_name','username','email','password1','password2','phone_number','type']

视图.py

def register(request):
    if request.method == 'POST':
        form = UserForm(request.POST)
        if form.is_valid():
            form.save()
            return redirect('login')
    else:
        form = UserForm()
    return render(request,'register.html', {'form': form})

标签: python-3.xdjango-modelsdjango-forms

解决方案


推荐阅读