【发布时间】:2017-04-09 22:19:40
【问题描述】:
我正在寻找让用户修改为纠正填写过程中的错误而创建的表单的可能性。
有一些用户步骤(我在第 4 步被阻止):
1) HTML 页面上显示一个空表单
2) 用户填写表单并点击提交按钮 验证数据并将对象保存在 MySQL 数据库中。
3) 我显示一种简历以验证所有数据是否正确
4) 我想在简历下方添加一个按钮
Modify。用户可以修改一个或多个字段并更新 MySQL 数据库。
问题如下:我不知道该怎么做(第 4 步)。当我开始使用 Django 时,是否可以获得一些建议或部分脚本?
views.py:
def IdentityFormulary(request) :
form = IdentityForm(request.POST or None)
if form.is_valid() :
instance = form.save()
return HttpResponseRedirect('formulaire_traite')
context = {
"form" : form,
}
return render(request, 'form_Identity.html', context)
def CompletedFormulary(request) :
identity = Identity.objects.all().order_by("-id")[0]
context = {
"identity" : identity,
}
return render(request, 'recapitulatif_identity.html',context)
我的 HTML 模板:
<h2 align="center"> Votre formulaire a été validé </align> </h2>
{% block content %}
Votre personne porte le numéro : {{ identity.id }}
<h3> Récapitulatif des données enregistrées : </h3>
<li> Civilité : {{identity.title}}</li>
<li> Nom : {{identity.lastname}}</li>
<li> Prénom : {{identity.firstname}}</li>
<li> Sexe : {{identity.sex}}</li>
<li> Date de Naissance : {{identity.birthday}}</li>
<li> Ville de Naissance : {{identity.birthcity}}</li>
<li> Pays de Naissance : {{identity.birthcountry}}</li>
<li> Nationalité : {{identity.nationality}}</li>
<li> Profession : {{identity.job}}</li>
<li> Adresse : {{identity.adress}}</li>
<li> Ville : {{identity.city}}</li>
<li> Code Postal : {{identity.zip}}</li>
<li> Pays : {{identity.country}}</li>
<li> Email : {{identity.mail}}</li>
<li> Téléphone : {{identity.phone}}</li>
{% endblock %}
<br></br>
<form method='POST' action='/Identity/accueil'> {% csrf_token %}
<input type ="submit" value="Retour fiche identité" />
</form>
<form method='POST' action='/BirthCertificate/accueil'> {% csrf_token %}
<input type ="submit" value="Création d'un acte de naissance" />
</form>
我看到了一些与我的步骤 4 相对应的功能:例如 Form.cleaned_data,但我不知道如何实现这一步。
谢谢!
编辑:
我正在阅读类似以下内容的部分:
instance = form.save(commit=False)
instance.save()
我认为可以输入数据,但不能立即将其保存在数据库中。 我走对了吗?
【问题讨论】:
-
我建议您阅读以下内容:docs.djangoproject.com/en/1.10/topics/forms 并在您的代码中遵循相同的模式
-
@e4c5 我已经阅读了这部分,但可能更快......我将详细了解我可以制作这个过程。谢谢
标签: python mysql django forms django-queryset