2010-06-25 3 views

답변

29

, 당신은 단지

{% if var in the_list %} 

파이썬에서와 같은 작업을 수행 할 수 있습니다.

그렇지 않으면 네, 당신은 사용자 정의 필터가 필요합니다 - 그것은 세 라이너는 생각입니다 :

@register.filter 
def is_in(var, obj): 
    return var in obj 
+3

목록과 같은 템플릿에있을 수 있습니다 :'{ % 1 ','item2 ','item3 '] %}' – Sevenearths

+3

@Sevenearths 방금 시도한 내용과 Django 1.5.1에서 목록 **을 정의 할 수 없습니다. 'if' 문은 그렇게합니다. – Patrick

+0

우리는 어떻게 그 일을하려고할까요? – laycat

0

은 템플릿에서 문자열을 쉼표로 구분을 통과하고 싶으십니까?

from django import template 
register = template.Library() 

@register.filter 
def in_list(value, the_list): 
    value = str(value) 
    return value in the_list.split(',') 

당신은 다음과 같이 호출 할 수 있습니다 :

{% if 'a'|in_list:'a,b,c,d,1,2,3' %}Yah!{% endif %} 

을 또한 변수와 함께 작동 : 사용자 정의 templatetag 만들기

{% if variable|in_list:'a,b,c,d,1,2,3' %}Yah!{% endif %} 
관련 문제