2017-05-31 6 views
0

ドキュメントを検索しようとしましたが、理解できませんでした.2つまたは両方の間に違いがありますか、少し変更しても同じ意味で使用できます。 リダイレクトはリターン文でのみ使用されます。私はドキュメントを調べてみましたが見つかりませんでした。どんな助けもありがとう。 https://docs.djangoproject.com/en/1.11/ref/class-based-views/base/#redirectview https://docs.djangoproject.com/en/1.11/topics/http/shortcuts/#redirectRedirectView.as_view V/sリダイレクト

+0

'redirect'だけで使用することができます' Response'オブジェクトを返します。別のビューの一部として'RedirectView'はあなた自身のビューで継承されるか、そのまま使用されるクラスベースのビュー*クラス*全体です –

答えて

1

RedirectView.as_view()である - その名の通り - ビューを。つまり、最初の引数としてリクエストを受け取り、他の引数を受け入れ、HttpResponseを返します。 URLパターンには他のURLパターンを含めるか、直接ビューを参照する必要があります。 RedirectView.as_view()をURL設定に直接フックすることができます。

redirect()は、最初の引数としてリクエストを受け付けないため、ビューではありません。つまり、URL設定にフックすることはできません。

redirect()もちろんの缶は、あなたのURLの設定にフックすることができますビュー、内部で使用され、例えば:*機能*

def redirect_view(request): 
    return redirect('/') 
関連する問題