我希望我能创建一个循环,允许我实例化我现在所有的formset
def access(request, page_id):
if request.method == 'POST':
formset = ReplyFormSet(request.POST, request.FILES, initial=[{'instance':instance,}])
if formset.is_valid():
#...
return ...
else:
formset = ReplyFormSet(queryset=Reply.objects.filter(question=questions))
return ...
在最后一行,我恢复了数据库中的信息,但只是为了我的第一个表格!有没有办法建立一个循环,以便它实例化我所有的形式?
我尝试了类似的东西,但它不起作用:
else:
for form in formset:
form.formset = ReplyFormSet(queryset=Reply.objects.filter(question=questions))
return ...
此行仅适用于我的第一个表单:
formset = ReplyFormSet(queryset=Reply.objects.filter(question=questions))
我该如何影响它?
我应该更改ReplyForm的 init 功能吗?
答案 0 :(得分:1)
你可以尝试:
formset = ReplyFormSet(queryset=Reply.objects.filter(question__in=questions))
使用in
过滤器,您可以获得question
查询集中的每个questions
。