А то вот еще есть process_template_response метод, может его надо?
Да, именно так. Оказалось не совсем.Пишу я тоже process_response. В доках написано, что response is the HttpResponse. Проверяю, у меня он почему-то TemplateResponse.
TemplateResponse наследуется от SimpleTemplateResponse, для которого родительским является HttpResponse. Поэтому "response is the HttpResponse".
Возникает ошибка 'HttpResponseRedirect' object has no attribute 'rendered_content', То есть response уже другой объект уже получается.
rendered_content -- это свойство (property), которое устанавливается в SimpleTemplateResponse, который, как я говорил выше, является родительским классом для TemplateResponse. Но
HttpResponseRedirect(HttpResponseRedirectBase) наследуется напрямую от HttpResponse, поэтому у него нет свойства rendered_content.
по поводу отличия process_response и process_template_response
process_template_response выполняется только если у response есть метод render, а process_response выполняется всегда. Логику можно посмотреть
process_template_response и
process_response
Метод
render задается в классе SimpleTemplateResponse от которого, как мы выяснили, наследуется TemplateResponse, но не HttpResponseRedirect.