@daho005

Как передавать контекст в include на всех страницах Django Python?

Приветствую. У меня есть HTML-обёртка от которой наследуются другие шаблоны.
<html>
<head>
<title>Сайт на Python</title>
</head>
<body>
{% include 'includes/top_menu.html' with context=context %}
</body>
</html>

Есть файл top_menu.html в котором должны циклом отрисовываться странички из базы данных, которые я добавляю из admin-панели.
Мне нужно как-то чтобы на всей страницах в top_menu.html передавался контекст с этим query-setом.
Вообще это можно делать каждый раз передавая контекст во views, вот пример:
from .models import Page
def index(request):
     context={'pages': Page.objects()}
     return render(request, 'shablon.html', context=context)
def feedback(request):
     context={'pages': Page.objects()}
     return render(request, 'shablon2.html', context=context)
def help(request):
     context={'pages': Page.objects()}
     return render(request, 'shablon3.html', context=context)

Но это не очень практично. Как я могу это оптимизировать?
  • Вопрос задан
  • 93 просмотра
Решения вопроса 1
@noremorse_ru
context_processors
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@rm_root
так пробували ?
from .models import Page

context={'pages': Page.objects()}

def index(request):
     return render(request, 'shablon.html', context)
def feedback(request):
       return render(request, 'shablon2.html', context)
def help(request):
      return render(request, 'shablon3.html', context)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы