как перезаписать обработку метода рендеринга шаблона django
-
07-07-2019 - |
Вопрос
В моем приложении я периодически отправляю запросы cron и фоновых задач, чтобы обновить кеш страниц. Хотя отправка kwarg force_refresh из представления проста, нет очевидного способа отправить kwarg force_refresh методам, доступным из шаблона. Я использую их много, и было бы сложнее начать вызывать все эти методы из представления.
Итак, я пытался переписать метод визуализации шаблона, чтобы я передавал kwarg force_refresh при каждом обращении к методу, если данный ответ предназначен для запроса фоновой задачи.
Я понимаю, что это может привести к непредвиденным проблемам при добавлении этого kwarg ко всем вызываемым методам, и блок try / Кроме ArgumentError не будет надежным решением, если у вас есть какие-либо рекомендации относительно лучшего способа обработки это (надеюсь, помимо доступа к каждому из этих методов из представления!), было бы полезно услышать их. Р>
Решение
Извините, но ваш вариант использования - именно то, для чего предназначена функция просмотра. Р>
В функции просмотра вы собираете все данные. Из этого вы создаете словарь последних данных, которые будут использоваться шаблоном.
Вся логика идет в поле зрения. Шаблон имеет минимальную обработку.