【发布时间】:2018-08-14 13:23:00
【问题描述】:
我想在视图中插入另一个视图。
基本上我使用 Django 过滤器包和值输出直接填充模板,而无需编写任何视图类。
我想在当前模板中插入另一个 html。
像这样的东西:{% include 'countsnippet' %},但这给了我错误模板不存在。
或者,我尝试使用{% include 'countsnippet.html' %},但这不会调用视图并且字段仍然为空。
我可以使用什么方法来包含另一个视图?
这是我的 countsn-p html。
{% block content %}
<p> INFT : {{ inft }} </p>
{% endblock %}
我已经为 countsn-p 做了视图,它的 url 看起来像这样:
url(r'countsnippet/$', countsnippet, name='countsnippet')
这是 countsn-p 视图的 sn-p:
def countsnippet(request):
checkins = Attendee.objects.filter(checkin=True)
inft = Attendee.objects.filter(branch='INFT')
cmpn = Attendee.objects.filter(branch='CMPN')
mms = Attendee.objects.filter(branch='MMS')
return render( request, 'search/countsnippet.html', {'inft':
(checkins&inft).count(), 'cmpn': (checkins&cmpn).count(), 'mms':
(checkins&mms).count()} )
【问题讨论】:
-
我很确定在使用extend、include 和block 部分之间你可以完成你正在寻找的东西。
-
我尝试过包含和阻止系统,但我无法找到方法。我也尝试过这里提到的实现(stackoverflow.com/questions/10608114/django-two-views-one-page),但我找不到适合我想要的方式。
-
请列出我应该在
countsnippet.html的上下文中声明哪些变量 -
当然,count sn-p 视图返回一个字典,其中包含如下几个值:
return render( request, 'countsnippet.html', {'inft': inft.count(), 'cmpn': cmpn.count(), 'extc': extc.count() })并且我的模板 sn-p 被提及。谢谢 -
你确定` {'inft': inft.count(), 'cmpn': cmpn.count(), 'extc': extc.count() }` 在父视图中声明?
标签: django