我被我的代码卡住了。需要帮助。在
这是我的前端。我正在呈现存储在“表单列表”中的表单。 问题是存储的表单类型相同,因此生成的输入字段具有相同的“id”和“name”。在
这是我的视图:-在
@login_required
def VideoLinkView(request):
"""view to save the video links """
current_form_list = []
current_form = None
if request.method == 'GET':
vl = VideoLink.objects.filter(company=CompanyModel.objects.get(owner=request.user))
for link in vl:
current_form = VideoLinkForm(link.__dict__)
current_form_list.append(current_form)
return render(request, "premium/video_link.html", context={'form_list':current_form_list})
这是我的html模板:-
^{pr2}$如何在for循环的输入标记的每次迭代中创建不同的“id”和不同的“name”,而不必知道表单列表中没有存储表单。 我试过{forloop.计数器}}没用,也许是我弄错了。另外,原始python在模板中不起作用。在
提前谢谢。在
您创建表单的方式在两个方面是错误的。首先,第一个位置参数用于用户提交的值;传递这个参数将触发验证,等等。如果要传递display值以预填充表单,则必须使用
initial
kwarg:然而,即使这样对您的用例来说也是不正确的。
^{pr2}$link
是一个模型实例;您应该使用instance
kwarg:现在,要解决您所问的问题,您可以按照我最初的建议传递一个
prefix
:但是,既然你已经展示了所有细节,我们可以看出这不是最好的方法。您有一个queryset;所以您只需使用一个model formset。在
相关问题 更多 >
编程相关推荐