2011-02-04 7 views
1

템플릿에 전달되는 목록이 있습니다. 특정 인덱스가있는 값에 액세스하려고합니다. 문제 목록은 예를 들어 ... 템플릿 점 표기법으로 Python/Django - 개체 변수 값에서 인덱스로 목록 값 가져 오기

를 액세스 할 수 있습니다 : 목록 템플릿에

object = { id: 1 } 
list = [ "zero", "one" ] 
print list[ object.id ] ## one 

후에는 점 표기법으로 인덱스 값에 액세스 할 수 있습니다.

list.1 ## one 
list[ object.id ] ## this doesn't work 
list.object.id ## this doesn't work obv. 

색인 "1"을 사용하여 "one"값에 액세스하려면 어떻게해야합니까?

미리 감사드립니다.

+0

사전에있는 키가 변수'id' 또는 문자열' "id"'입니까? 그것이''id ''라면 제 3의 것이 효과가 있다고 생각합니다. –

답변

2

장고의 템플릿 언어에서는 이것이 가능하지 않다고 생각합니다. 그것은 꽤 제한된 디자인입니다.

코드를 뷰에 넣고 렌더 할 때 list[object.id] 값을 템플릿에 전달하면됩니다.

1

나는 그것이 불가능하다는 것에 동의하지 않는다.

템플릿 태그를 만들 수 있습니다. 템플릿 태그는 두 개의 인수를 받아 들일 수 있으며 템플릿 배경에 새로운 변수를 삽입합니다.

로 볼 수 사용법은 다음과 같습니다 다음과 같은 일반 템플릿 변수 {{list_member}}

검사 표준의 구현을 list_member 사용할 수 있습니다

{%의 get_list_member 목록 list_member의 %로 object.id} url 템플릿 태그는 나중에 사용할 수 있도록 템플릿 컨텍스트 변수에 URL을 할당 할 수도 있습니다.

관련 문제