Django 템플릿 내 인덱스별 참조 목록 항목?
이것은 간단할 수도 있지만, 저는 주위를 둘러보았지만 답을 찾을 수 없었습니다.장고 템플릿에서 목록의 단일 항목을 참조하는 가장 좋은 방법은 무엇입니까?
다시 말해서, 어떻게 하면 동등한 것을 할 수 있습니까?{{ data[0] }}
템플릿 언어 내에서?
처럼 보입니다.{{ data.0 }}
변수 및 조회를 참조하십시오.
더 나은 방법: 사용자 지정 템플릿 필터: https://docs.djangoproject.com/en/dev/howto/custom-template-tags/
템플릿에서 get my_list[x]와 같이 입력합니다.
견본으로
{% load index %}
{{ my_list|index:x }}
템플릿 태그/index.py
from django import template
register = template.Library()
@register.filter
def index(indexable, i):
return indexable[i]
한다면my_list = [['a','b','c'], ['d','e','f']]
사용할 수 있습니다.{{ my_list|index:x|index:y }}
가져올 템플릿으로my_list[x][y]
"for"와 잘 작동합니다.
{{ my_list|index:forloop.counter0 }}
테스트를 거쳤으며 잘 작동합니다 ^_^
{{ data.0 }}
작동해야 합니다.
당신이 썼다고 치자.data.obj
장고의 시도data.obj
그리고.data.obj()
그들이 작동하지 않으면 시도합니다.data["obj"]
당신의 경우에는data[0]
라고 쓸 수 있습니다.{{ data.0 }}
하지만 저는 당신이 그것을 잡아당길 것을 추천합니다.data[0]
뷰에서 별도의 변수로 전송합니다.
@jennifer06262016, 다른 필터를 추가하여 django 쿼리 세트 내의 개체를 반환할 수 있습니다.
@register.filter
def get_item(Queryset):
return Queryset.your_item_key
이 경우 이와 같은 {{Queryset|index:x|get_item }}을(를) 템플릿에 입력하여 일부 사전 개체에 액세스할 수 있습니다.저한테는 효과가 있어요.
먼저 아래 지침에 따라 앱에 사용자 지정 태그 기능이 설치된 앱에 추가되었는지 확인합니다.
메인 디렉토리 앱에서 1은 model.py,views.py,urls.py 과 동일한 수준의 이름 템플릿 태그로 다른 디렉토리를 만듭니다.
templatetags 디렉토리의 내부 2개는 init.py 을 생성하고 사용자 지정 태그의 이름을 가진 다른 파일(예: my_tags.py)을 생성합니다.
MainApp/
__init__.py
models.py
templatetags/
__init__.py
my_tags.py
views.py
템플릿에서 다음을 사용합니다.
{% load my_tags.py %}
내가 있는 곳에py:
from django import template
register = template.Library()
@register.filter(name="get")
def get(indexable, i):
return indexable[i]
의견으로는py:
number = [0,1,2,3,4,5]
return render(
"index.html", {"number":number}
)
in index.dll:
{% load my_tags %}
{{numer|get:forloop.counter0}}
나는 당신이 이해하기를 바랍니다, 왜냐하면 영어는 내 모국어가 아니기 때문입니다.
언급URL : https://stackoverflow.com/questions/4651172/reference-list-item-by-index-within-django-template
'programing' 카테고리의 다른 글
사전 대 객체 - 어떤 것이 더 효율적이고 왜? (0) | 2023.07.17 |
---|---|
파이썬을 사용하여 웹 페이지에 로그인하고 나중에 사용할 쿠키를 검색하는 방법은 무엇입니까? (0) | 2023.07.17 |
참 조건(x = x ?: 1)에 대한 값을 할당하지 않고 3진수 연산자를 사용하는 이유는 무엇입니까? (0) | 2023.07.17 |
공백 없이 텍스트를 단어 목록으로 분할하는 방법 (0) | 2023.07.17 |
파이썬에서 __init__의 값을 반환하는 방법은 무엇입니까? (0) | 2023.07.17 |