Шаблоны Django: Вызов super в случае многоуровневых расширений

#django #django-templates

Вопрос:

Это моя текущая структура шаблона:

 example_template_1.html
example_template_2.html extends example_template_1.html
example_template_3.html extends example_template_2.html
 

Как бы я мог получить содержимое определенного блока из example_template_1.html in example_template_3.html ? В принципе, мне нужно что-то, что {{ block.super.super }} example_template_3.html позволяет переопределить содержимое определенного блока example_template_1.html .

Возможно ли это?

Комментарии:

1. По состоянию на django 3.1 это кажется невозможным. Я бы рекомендовал провести рефакторинг ваших шаблонов.

2. Я бы перестроил шаблоны так, чтобы каждый блок был собственным шаблоном, преобразовал их по мере необходимости в коде python в html-строки, пометил их как безопасные и вставил в большой шаблон, где они соответствующим образом объединены.