ユーザーが自分のWebサイトにある既存のURLのエイリアスを作成できるURLエイリアスアプリを作成しようとしています。
私はミドルウェアを介してこれを行おうとしています。ミドルウェアではrequest.META['PATH_INFO']
、エイリアスのデータベースレコードに対してチェックされます。
try:
src: request.META['PATH_INFO']
alias = Alias.objects.get(src=src)
view = get_view_for_this_path(request)
return view(request)
except Alias.DoesNotExist:
pass
return None
ただし、これが正しく機能するためには、(少なくとも)PATH_INFOが宛先パスに変更されることが非常に重要です。
現在、開発者がテストリクエストオブジェクトを作成できるようにするスニペットがいくつかあります(http://djangosnippets.org/snippets/963/、http://djangosnippets.org/snippets/2231/ )が、これらはそれらが意図されていることを示していますテスト目的。
もちろん、これらのスニペットはライブ環境での使用に適している可能性がありますが、Djangoリクエスト処理に関する私の知識は、これを評価するにはあまりにも開発されていません。