RequestContext
используется только для передачи значений в шаблонизатор при визуализации шаблона. Представление назначения не должно зависеть от RequestContext
от исходного представления, оно должно иметь возможность генерировать свой собственный RequestContext.
Однако существуют ситуации, когда вам нужно передавать значения между представлениями, как это. В этих ситуациях вы можете использовать значения строки запроса для этого. Например ...
def originating_view(request, *args, **kwargs):
return HttpResponseRedirect('/accounts/login/?username=%s&next=%s' % (username, request.path)
def destination_view(request, *args, **kwargs):
# Get the username from the querystring
username = request.GET.get('username', None)
next = request.GET.get('next', '/')
if username:
# ...
(Обратите внимание, что я предполагаю, что причина, по которой вы хотите сохранить имя пользователя, состоит в том, чтобы предварительно заполнить его в форме входа в систему. Если вы выполняете фактический вход в систему, вам нужно вместо этого использовать POST чтобы имя пользователя и пароль не записывались в виде обычного текста в URL).