我有一个创建自定义用户实例(AbstractUser 模型)的 ModelForm。每当我尝试提交表单时,除了重新加载页面(由于操作)之外什么都没有发生,并且没有任何内容保存在数据库中。代码如下:
def sign_up(request):
if request.method == 'POST':
print("test")
form = UserForm(request.POST)
if form.is_valid():
form.save()
data = form.cleaned_data
user = authenticate(
username=data['username'],
password=data['password']
)
user_login(request, user)
else:
form = UserForm()
return render(request, 'schedules/signup/signup.html', {'form':form})
class ClientUser(AbstractUser):
classes = models.ManyToManyField(ScheduleClass)
personal_changes = models.TextField(name="personal_changes", default="none")
schedule = models.ManyToManyField(Schedule)
def get_classes(self):
return self.classes
class UserForm(forms.ModelForm):
class Meta:
model = ClientUser
fields = ['username', 'password', 'classes', 'schedule']
<form method="post" action="http://127.0.0.1:8000/">
{% csrf_token %}
{{ form }}
<input type="submit">
</form>
出于某种原因,它甚至没有打印我在sign_up
函数的第 3 行写的行,即使我发布。有什么我做错了吗?