revision-up-to: | 8961 (1.0) |
---|
Django にはオプションとして redirects アプリケーションがついてきます。この アプリケーションを使うと、リダイレクト先をデータベースに保存し、適切なリダ イレクト処理をおこなってくれます。
redirects アプリケーションをインストールするには、以下の 3 ステップの操作を 行います:
manage.py syncdb を実行すると、データベースに django_redirects とい う名のテーブルを作成します。このテーブルは site_id, old_path および new_path というフィールドを持った検索テーブルです。
全ての処理は RedirectFallbackMiddleware で行われます。 Django アプリケー ション内で 404 エラーが送出されると、このミドルウェアは最後の手段として redirects データベースにリクエスト URL がないか調べます。特に、 SITE_ID に対応するサイト ID を持った old_path を探します。
ミドルウェアが起動されるのは 404 エラーに対してだけで、 500 やその他の状態 コードでは起動されません。
MIDDLEWARE_CLASSES の設定順には注意が必要です。一般に、 RedirectFallbackMiddleware はリクエスト処理の最終手段なので、リストの末 尾に指定します。
ミドルウェアについての詳しい情報は ミドルウェアのドキュメント <topics-http-middleware> を参照してください。
Django の自動 admin インタフェースを有効にしていれば、 “Redirects” という名 前のセクションが admin のインデクスページに表示されているはずです。Django の他のオブジェクトと同じように編集してください。
Aug 31, 2012