我正在尝试创建一个模板,其中包含一个创建内容的表单以及那些东西的列表。如果我有视图
(?!\b19\d\d\b)(?!\b20[01]\d\b)(\b\p{N}+\b)
这就是我所做的。
def list_of_something(request):
list1=something.objects.all()
return render(request , 'index.html' ,{'list1':list1})
def post_something(request):
form_class=SomethingForm
if request.method="POST":
form=form_class(request.POST)
if form.is_valid():
.........
........
........
return render(request, 'post_something.html', {'form': form,})
将include
放入index.html,它会加载post_something.html但是当它到达{% include "post_something.html" %}
时它不会加载它吗? UPDATE
感谢下面的答案。我做的是将{{form.as_p}}
添加到index.html。并将表单的名称传递给视图返回{% include "post_something.html" %}
。
另外,将表单操作属性指向post_something视图,它应该可以工作。
答案 0 :(得分:0)
post_something.html
只是模板的名称,您仍然需要传递表单。我假设您正在尝试显示list_of_something
视图,因此您需要将该表单包含在该视图的上下文数据中。
return render(request , 'index.html',{'list1':list1, 'form': SomethingForm()})
答案 1 :(得分:0)
当您使用post_something.html
标记时,假设index.html
的内容将合并到{% include %}
。现在,您需要从视图中传递合并模板中的所有变量。它应该是这样的:
return render(request,
'index.html',
{'list1':list1, 'form': form})
您可以根据业务用例定义form
。