Разве вы не можете просто получить ссылку на контекстный процессор и вызвать его в своих представлениях? Из того, что я прочитал в документах , нет ничего особенного в контекстном процессоре:
У контекстного процессора очень простой интерфейс: это просто функция Python, которая принимает один аргумент, объект HttpRequest и возвращает словарь, который добавляется в контекст шаблона. Каждый контекстный процессор должен возвращать словарь.
Пользовательские контекстные процессоры могут жить где угодно в вашей кодовой базе. Django заботится только о том, чтобы на ваши пользовательские контекстные процессоры указывал ваш параметр TEMPLATE_CONTEXT_PROCESSORS.
Вы можете получить доступ к каждому представлению вначале, передав ему параметр request
, или, возможно, создать декоратор, который «внедрит» его в ваши представления для вас (что проще в вашем случае).