2015-01-08 47 views
0

我有以下Django模板。修改django模板來檢查字典中的值

{% load custom_tags %} 
<ul> 
{% for key, value in value.items %} 
<li> {{ key }}: {{ value }}</li> 
{% endfor %} 

我需要檢查value並做一些修改。

如果該值爲True,而不是值,我必須打印Applied,否則如果它False我需要打印Not Applied

如何實現這一目標?

回答

1

這裏很簡單的if-else子句。看看django template docs以熟悉一些常見標籤。

{% if value %} 
    APPLIED 
{% else %} 
    NOT APPLIED 
{% endif %} 

你問如何做到這一點作爲一個過濾器...我不知道爲什麼,但這裏是它:

在您的應用程序的templatetags目錄下創建一個名爲my_tags.py或東西,使內容

from django import template 

register = template.Library() 

@register.filter 
def applied(value): 
    if value: 
     return 'Applied' 
    else: 
     return 'Not applied' 

然後在你的模板確保有{% load my_tags %},並使用過濾器{{ value|applied }}

+0

如何使用要做到這一點過濾器 – station

+0

爲什麼你需要一個過濾器來做到這一點? – rfj001

+0

只是想知道是否有一個更優雅的方式來做到這一點 – station