我有一个返回空的cleaning_data的formset,即使formset有效。 我的观点是这样的:
def edit_files(request):
file_formSet = formset_factory(FileUploadForm)
if request.POST:
formset = file_formSet(request.POST, request.FILES)
if formset.is_valid():
for form in formset:
form_data = form.cleaned_data
if form_data:
up_file = upload_file(form_data['file'])
else:
formset = file_formSet()
return render_to_response('edit_files.html', {'formset': formset})
这是一个上传表单,有了这个问题,我无法保存文件 upload_file是我实现的方法之一,它运行正常,我已经测试过了。
答案 0 :(得分:1)
当我忘记在 HIGH LAST PRICE LOW
date
2017-05-04 HSBA LN Equity 672.500 663.800 661.100
UCG IM Equity 2.768 2.760 2.694
ISP IM Equity 16.020 15.970 15.490
2017-05-05 HSBA LN Equity 663.900 658.600 656.000
UCG IM Equity 2.868 2.842 2.770
ISP IM Equity 16.480 16.220 15.770
2017-05-08 HSBA LN Equity 664.100 660.600 658.900
UCG IM Equity 2.898 2.852 2.826
ISP IM Equity 16.490 16.010 15.940
2017-05-09 HSBA LN Equity 669.200 664.900 662.500
UCG IM Equity 2.898 2.848 2.842
ISP IM Equity 16.410 15.900 15.900
2017-05-10 HSBA LN Equity 673.400 670.900 663.800
UCG IM Equity 2.888 2.850 2.802
ISP IM Equity 16.150 16.090 15.590
之后添加括号()时,我遇到了同样的错误消息。 is_valid
返回Formset.is_valid
,但没有清理数据只是因为没有调用True
函数来返回已清理的数据。
答案 1 :(得分:0)
我认为您需要更改以下行;
... snip ...
for form in formset.forms:
form_data = form.cleaned_data
... snip ...
您似乎缺少格式集中的.forms
部分。
答案 2 :(得分:0)
确定 我发现在使用了一些断点之后,它实际上是请求的错,request.FILES是空的
答案 3 :(得分:0)
tnx为你所有的答案,我解决了这个问题, 我有一个有两个功能的表单:add_file和del_file 在我分开之后,每件事都没问题 但是在查看页面时出现问题 在我添加一些文件后,比如3个文件,然后request.POST发送,然后我再次返回页面 我实际上看到三行文件输入,而不是一行 它真的减少了美感 有什么建议吗?