Как обычно имеем базовый шаблон. В этом шаблоне есть блоки:
block mainmenu и
block content. Блок контента будет меняться шаблонами в соответствующих вьюшках.
Меню у меня динамическое и для шаблона меню нужно формировать свои переменные.
В каждой вьюшке указываю базовый шаблон, передаю имя шаблона для контента и все нужные переменные для формирования меню.
Но это не дело, что в каждой вьюшке надо формировать список переменных для меню.
Можно конечно вынести во внешнюю функцию задание имени базового шаблона и формирование начального словаря для меню. Но мне кажется тут не удобно будет выглядеть возврат результата. Это будет что-то вроде этого:
def init():
'''Формируем данные для базовой странице'''
template_base = 'base.html'
catalog_nodes = Catalogue.objects.all()
contex_var = {'catalog_nodes': catalog_nodes}
return template_base , contex_var
Как грамотно сделать?