我有这么简单的看法:
import datetime
from django import forms
from django.forms.formsets import formset_factory
from django.http import HttpResponse
from django.shortcuts import redirect, render, render_to_response
from django.views.generic.detail import DetailView
from form_utils.forms import BetterForm
from fb_app import models as fb_model
from learn_forms import models as lf_model
class ArticleForm(forms.Form):
title = forms.CharField(required=True)
#pub_date = forms.DateField()
def formset(request):
print request.POST
ArticleFormSet = formset_factory(ArticleForm) # [1]
if request.method == 'POST':
formset = ArticleFormSet(request.POST)
print formset.is_valid()
if formset.is_valid():
# do something with the formset.cleaned_data
pass
else:
formset = ArticleFormSet()
print formset.is_valid()
return render(request, 'formset.html', {
'formset': formset,
})我单击submit with空标题字段,然后formset验证显示它是有效的(我希望看到有关所需值的消息),但是如果交换格式集使用如下形式:
ArticleFormSet = ArticleForm在标记为:"# 1“表单的一行显示消息‘这个字段是必需的’(我希望如此)。
html文件:
<form method="post" action="/lf/formset">
{% csrf_token %}
<table>
{{ formset }}
</table>
<input type="submit" name="submit" >
</form>怎么了?
发布于 2013-07-17 11:18:31
问题在于如何在模板中调用表单。它应该是这样的:
<form method="post" action="/lf/formset">
<table>
{% csrf_token %}
{{ formset.as_p }}
</table>
<input type="submit" name="submit" >
</form>您可以了解更多关于它们的这里。
https://stackoverflow.com/questions/17695985
复制相似问题