Django 템플릿의 동적 키를 사용하여 사전 값에 액세스
Django 템플릿은 사전을 사용하여 작업하는 편리한 방법을 제공하므로 개발자는 다음을 사용하여 값에 액세스할 수 있습니다. 점 표기법(예: {{ mydict.key1}}) 그러나 키가 제공된 예에서 item.NAME과 같은 루프 변수인 경우 사전 값에 직접 액세스하는 것이 문제가 됩니다.
해결책: 사용자 정의 템플릿 필터 활용
이 문제를 극복하기 위해 Django는 템플릿 시스템의 기능을 확장하는 사용자 정의 템플릿 필터를 정의하는 기능을 제공합니다. 다음은 변수 키를 사용하여 사전 값을 조회할 수 있는 필터입니다.
# import the necessary modules from django.template.defaulttags import register # define the custom template filter @register.filter def get_item(dictionary, key): return dictionary.get(key)
get_item 필터는 get 메소드를 사용하여 주어진 사전에서 제공된 키에 해당하는 값을 검색합니다. 키가 사전에서 발견되지 않으면 get_item은 KeyError를 발생시키는 대신 None을 반환합니다.
템플릿에서의 사용
사용자 정의 필터를 사용하려면 아래와 같이 사전과 그에 대한 변수 키를 지정합니다.
{{ mydict|get_item:item.NAME }}
이 예에서 mydict는 다음을 포함하는 사전입니다. 키-값 쌍이며 item.NAME은 변수 키입니다. get_item 필터는 item.NAME 키를 사용하여 mydict의 값을 조회하고 해당 값을 반환합니다.
위 내용은 Django 템플릿의 동적 키를 사용하여 사전 값에 액세스하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!