source

{% 확장 '... %} 조건부로 만들 수 있는 방법이 있습니까? - 장고

manycodes 2023. 3. 27. 21:21
반응형

{% 확장 '... %} 조건부로 만들 수 있는 방법이 있습니까? - 장고

AJAX와 regualr HTTP 콜 간에 템플릿을 공유하고 싶은데 유일한 차이점은 템플릿 하나는 base.html html html과 함께 제공되어야 하고 다른 하나는 사용하지 않아야 한다는 것입니다.

감 잡히는 게 없어요?

다른 답변에서는 추가 컨텍스트 변수를 전달해야 합니다.단, request 객체에 액세스할 수 있는 한 다음과 같은 작업은 필요하지 않습니다.

{% extends request.is_ajax|yesno:"app/base_ajax.html,app/base.html" %}

이게 훨씬 편리하다고 생각했어요.

변수를 사용합니다.

{% extends base_template %}

뷰에서 "base.base"로 설정하거나 블록만 제공하는 새로운 "block.block" 파일로 설정합니다.

{% extends override_base|default:'base.html' %}

추신. 오래된 질문인 건 알지만, 답을 찾다가 찾았어요.아마 다른 사람에게도 같은 문제를 해결할 수 있을 거예요.

{% 확장 변수 %}을(를) 사용할 수 있습니다.

뷰에서 컨텍스트를 생성할 때 변수 기본 템플릿 이름을 전달합니다.

http://docs.djangoproject.com/en/dev/ref/templates/builtins/?from=olddocs#model

언급URL : https://stackoverflow.com/questions/5380984/any-way-to-make-extends-conditional-django

반응형