Когда сайт загружается я в методе home задаю ключ сессии по умолчанию. Но мне нужно задавать ее не только в методе home, а во всех методах. Как это сделать глобально? Чтобы не писать в каждом методе?
class SessionModeMiddleware(object):
def process_request(self, request):
if 'mode' not in request.session:
request.session['mode'] = 'm'
request.session.save()
Как вариант можно было бы расширить django.contrib.sessions.middleware.SessionMiddleware и заюзать вместо джанговской мидвари свой. Но выключать неудобно.
Можно написать свой и подключить, подобно ответу выше. И это ок в рамках джанго.
Если не хочется магии, пишем декоратор на вьюхи и уже там выставляем ключ.