Django UserCreationForm 未提交

时间:2021-02-05 01:16:32

标签: python django

我有一个 django 站点,目前正在尝试为其创建用户创建表单。我已遵循所有步骤,但没有发生某些事情。当我单击注册表中的按钮时,它不会提交任何内容。我也没有在终端中看到 POST 消息。当我进入管理门户时,我也没有看到我提交的内容。

视图.py

from django.shortcuts import render, redirect
from django.http import HttpResponseRedirect
from .models import StudentCourses
from .forms import StudentCoursesForm
from django.contrib.auth.forms import UserCreationForm
from django.contrib.auth import authenticate, login, logout

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

HTML

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Register</title>
</head>
<body>
    <h3>Register</h3>
    <form method="post">
        {% csrf_token %}
        {{ form.as_p }}

    </form>
    <button type="submit">Register</button>
</body>
</html>

2 个答案:

答案 0 :(得分:1)

将按钮放在表单标签中?

答案 1 :(得分:1)

尝试使用这个:-

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Register</title>
</head>
<body>
    <h3>Register</h3>
    <form method="post">
        {% csrf_token %}
        {{ form.as_p }}
<button type="submit">Register</button>
    </form>
</body>
</html>

我改变了什么:

我把 <button type="submit">Register</button> 放在里面。