現在、次の関数を使用して参照ビューを取得しています。
def get_referer_view(request, default=None):
referer = request.META.get('HTTP_REFERER')
if not referer:
return default
# remove the protocol and split the url at the slashes
referer = re.sub('^https?:\/\/', '', referer).split('/')
if referer[0] != request.META.get('SERVER_NAME'):
return default
# add the slash at the relative path's view and finished
referer = u'/' + u'/'.join(referer[1:])
return referer
view
プログラムロジックの結果としてをリダイレクトした場合。
return HttpResponseRedirect('dashboard')
... HTTP_REFERER
リダイレクトされた変数を使用できるように、使用せずに参照ビューを取得する方法はありview
ますか?これは常にブラウザのヘッダーで設定されるわけではありません。
ビューはプログラムでリダイレクトされるため、POSTを使用してデータを収集することはできません。
おそらく、どういうわけかカスタムヘッダーを設定および取得することは可能ですか?
HttpResponseRedirect
実際にはプログラム的なものではありません-実際のhttp 302応答を返し、ブラウザにリダイレクト先のビューの新しいURLへの新しいリクエストを
?came_from=inbox
。リンクされている、Facebook、他の人がそれをしているように見えるので、それは大丈夫な練習であるべきです。