2017-05-21 2 views
2

質問と同様の質問と回答を探しました。私はdjango-allauthビューで認証した後にホームページを表示することを期待しています。なぜ@login_requiredデコレータを使用するとログインリダイレクトが多すぎますか?原因とリダイレクトループのためのソリューションを説明リダイレクトループのコードはHTTP/1.1である「」302@login_requiredデコレータを使用するとDjangoにログインリダイレクトが多すぎるのはなぜですか?

私は

@login_requiredデコレータは以下のないことをDjangoのドキュメントから見上げました?:

  • ユーザーがログインしていない場合は、/ accounts/login /にリダイレクトし、 のクエリ文字列の現在の絶対URLを の例:/ accounts/login /?next =/polls/3 /に渡します。
  • ユーザーがログインしている場合は、ビューを正常に実行します。ビュー コードは、ユーザーがログインしていると仮定することができます。

アカウント/ログインページにユーザーがログインしていないアドレス変更しながら、私は、認証済みユーザーがホームページに進みたいです。私のsettings.pyの

パート:

LOGIN_URL='/accounts/login/' 
LOGIN_REDIRECT_URL='/' 

私のviews.py:

from django.shortcuts import render 
from django.template import RequestContext 
from django.contrib.auth.decorators import login_required 
# Create your views here. 
@login_required 
def home(request): 
    context={} 
    template='home.html' 
    return render(request, template,context) 

マイurls.py:

​​

答えて

3

問題は、あなたのurls.pyであります。

"^"は、行の先頭を示していません。

urlpatterns=[ 
    url(r'^admin/',admin.site.urls), 
    url(r'^$',profiles_views.home,name='home'), 
    url(r'^accounts/',include('allauth.urls')), 
] 
をお試しください
関連する問題