需求:通过以键方式从字典中取值,如 test[key]=value
views.py
from django.template import RequestContext
from django.shortcuts import render_to_response
def view(request)
dicts = {"key1": 1, "key2": 2, "key3": 3, }
return render_to_response("index.html", {"dicts":dicts,},context_instance = RequestContext(request))1.在app目录下建立templatetags/在此目录下建立空文件__init__.py和myfilter.py
2.在myfilter.py编辑
from django import template
register = template.Library()
def key(d,key_name):
value = 0
try:
value = d[key_name]
except KeyError:
value = 0
return value
register.filter('key',key)3.在模板中使用
{% load myfilter %} #加载自定认标签
{{dicts|key:"key1"}}