我想知道在完成表格时如何清除(重置)表格?
我可以将表单提交到我的MySQL数据库,我认为重置过程是相同的,但显然没有。我只想补充一点,我真的被Django困住了,我每天都在学习很多教程。
<!--DOCTYPE html -->
<html>
<body>
<h1 align="center"> Formulaire d'acte de naissance </h1>
<form method='POST' action=''> {% csrf_token %}
<h3> Partie contenant les informations de l'enfant</h3>
{{ Cform.as_ul}} <!-- Display child part formulary -->
{{ value|date:"%d/%m/%Y" }}
{{ value|time:"H:M" }}
<h3> Partie contenant les informations des parents </h3>
{{ Pform.as_ul }} <!-- Display parent part formulary -->
{{ value|date:"%d/%m/%Y" }}
<br></br>
<input type ="submit" value="Valider le formulaire" />
<input type ="reset" value="Reset" />
</form>
</body>
</html>
这是我的views.py文件:
#-*- coding: utf-8 -*-
from django.shortcuts import render
from django.http import HttpResponseRedirect, HttpResponse
from django.template import loader
from .models import Child, Parent
from .forms import ChildForm, ParentForm
# Create your views here.
def BirthCertificateAccueil(request) :
# Fonction permettant de créer la page d'accueil de la rubrique Acte de Naissance
#Cherche le fichier html accueil et le renvois
template = loader.get_template('accueil.html')
return HttpResponse(template.render(request))
def Formulary(request) :
# Fonction permettant de créer le formulaire Acte de Naissance et le remplissage
Cform = ChildForm(request.POST or None)
Pform = ParentForm(request.POST or None)
if Cform.is_valid() and Pform.is_valid() : # Vérification sur la validité des données
Cform.save()
Pform.save()
context = {
"Cform" : Cform,
"Pform" : Pform,
}
return render(request, 'birthform.html', context)
这是我的urls.py:
from django.conf.urls import url
from . import views
urlpatterns = [
url(r'^accueil$', views.BirthCertificateAccueil),
url(r'^formulaire$', views.Formulary),
]
这是一种完全错误的方法还是我错过了什么?
谢谢;)
PS:在Stack上有一个部分我可以用开发人员改进我的项目/脚本吗?因为我独自制作这个项目,而且作为初学者,这很难:/答案 0 :(得分:1)
习惯上使用Post/Redirect/Get进行表单提交。您所缺少的是在成功验证提交的表单值之后进行的重定向:
if Cform.is_valid() and Pform.is_valid() :
Cform.save()
Pform.save()
return redirect('/formulaire') # <- This.
答案 1 :(得分:0)
你做错了是将表单传递给你得到一次的post值的上下文。你只需要在上下文之前调用表单。这样每次保存结果后它都会显示空表格。
if Cform.is_valid() and Pform.is_valid() :
Cform.save()
Pform.save()
Cform = ChildForm()
Pform = ParentForm()
context = {
"Cform" : Cform,
"Pform" : Pform,
}