表格未在Django中显示

2024-04-19 21:16:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我想用Django创建表单 源代码中没有错误 程序正在运行 但是当运行注册页面时,表单不会出现,并且会出现“RegestrationonData对象(无)”

这是源代码

models.py

from django.db import models

class RegestrationonData(models.Model):
    username = models.CharField(max_length=100)
    password = models.CharField(max_length=100)
    email = models.CharField(max_length=100)
    phone = models.CharField(max_length=100)

form.py

from django import forms

class RegestrationonForm (forms.Form):
    username = forms.CharField(max_length=100)
    password = forms.CharField(max_length=100)
    email = forms.CharField(max_length=100)
    phone = forms.CharField(max_length=100)

views.py

from django.shortcuts import HttpResponse, render, redirect

from .models import News
from .models import RegestrationonData

def Index(request):
    context = {
        "name": "Ali"
    }

    return render(request, "index.html",  context)


def Home(request):
    obj = News.objects.filter()
    context = {
        "list": ["Django", "Flask", "Oddo"],
        "data": obj
    }
    return render(request, "home.html", context)


def Contact(request):
    return render(request, "contact.html")


def NewsDate(request, year):
    article_list = News.objects.filter(pub_date__year=year)
    context = {
        'year': year,
        'article_list': article_list
    }
    return render(request, "NDate.html", context)


def SignUp(request):
    context = {
        "form": RegestrationonData
    }

    return render(request, "signup.html", context)

signup.html

{% extends 'base.html' %} 
{% block title %} Sign Up {% endblock %} 
{% block body %}
<div class="container">
  <h1>This is sign up page</h1>
  <form>
    {{form}}
  </form>

</div>

{% endblock %}

运行应用程序时 enter image description here

有解决办法吗


1条回答
网友
1楼 · 发布于 2024-04-19 21:16:16

您必须使用RegestrationonForm(表单类)而不是RegestrationonData(模型类)

from form import RegestrationonForm


def SignUp(request):
    context = {
        "form": RegestrationonForm
    }
    # rest of the code

相关问题 更多 >