在一个模板中,我试图产生一组类似的元素。 简而言之,我有一些类似的线:
{%include“some / path.html”with key1 = value1 key2 = value2%}
{%include“some / path.html”with key2 = value3 key4 = value4%}
依旧......
传递给with
语句的变量是不同的。未传递给with
语句的Rest变量具有“some / path.html”模板中描述的默认值。
我的想法是将一些字典(或列表)传递给模板,模板会根据dict将参数传递给with
语句。
例如,我会有词典:{0: {key1: value1, key2: value2}, 1: {key2: value3, key4: value4}}
这个词汇将被传达给传递给with
陈述的论据。
我怎样才能实现它?或者,如果这是一个糟糕的解决方案,我可以做些什么呢?
我很想得到一些帮助!
答案 0 :(得分:0)
在模板中,您可以使用'。'访问数据到dicts / objects / whatether。
尝试在视图中将dict传递到您的上下文中:
context['my_dict'] = {0: {key1: value1, key2: value2}, 1: {key2: value3, key4: value4}}
然后您可以在模板中以这样的方式访问它:
{% include "some/path.html" with key1=my_dict.0.key1 key2=my_dict.0.key2 %}
{% include "some/path.html" with key2=my_dict.1.key2 key4=my_dict.1.key4 %}
希望它会对你有所帮助。
答案 1 :(得分:0)
我抓了很多头,想出了这个!
要发布它,也许它会有用。
在/yoursite/templatetags/yourcustomtag.py
型
from django import template
import sys
register = template.Library()
@register.simple_tag(takes_context=True)
def yourTag(context):
for k, v in your_dict_in_this_context:
context[k] = v
return
在模板中调用
{% load yourcustomtag %}
{% yourTag %}
并且您已将dict中的值加载到上下文中!耶!