Heim  >  Artikel  >  Backend-Entwicklung  >  Beispiel für einen benutzerdefinierten Django-Filter

Beispiel für einen benutzerdefinierten Django-Filter

高洛峰
高洛峰Original
2016-10-17 14:06:041089Durchsuche

Anforderungen: Rufen Sie den Wert anhand des Schlüssels aus dem Wörterbuch ab, z. B. 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. Erstellen Sie templatetags/ im App-Verzeichnis und erstellen Sie leere Dateien __init__.py

2. Bearbeiten Sie 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. Verwenden Sie

{% load myfilter %} #加载自定认标签
{{dicts|key:"key1"}}


in der Vorlage
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn