最初に、私はいくつかの答え(thisとthis)に従ったと言わなければならないが、私は問題を解決できない。ログイン後にユーザーが行方不明になる
まあ、django登録でdjango.contrib.auth.views.login
(正しく動作する)を使用していて、ログインフォームにnext="/home_page/"
のパラメータを設定しました。ビューは/home_page/
にasociated excutedされ、そのリターンは次のようになります。
return render_to_response('myapp/shop_list.html',
{'shop': entry_list,},
context_instance=RequestContext(request))
私は、ログインしてこのビューの間に、他のテンプレートをレンダリングdidntのが、デバッグ時に、私はUser
が要求されていないことに気づきましたが返される前にテンプレートがAnonymousUser
とuser.is_authenticated()
を返すFalse
ユーザーはDDBBにあり、パスワードは正しいです。この時点でどのようにログに記録されたユーザーを取得できますか?ここで
は役に立つかもしれ私のアプリに関する情報は以下のとおりです。
settings.py
===========
MIDDLEWARE_CLASSES = (
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
)
TEMPLATE_CONTEXT_PROCESSORS = (
'django.contrib.auth.context_processors.auth',
'django.core.context_processors.debug',
'django.core.context_processors.i18n',
'django.core.context_processors.media',
'django.contrib.messages.context_processors.messages',
'django.core.context_processors.request',
)
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'myapp',
'registration',
'django.contrib.admin',
)
login.html
==========
{% block maincontent %}
<form method="post" action="">{% csrf_token %}
{{form.as_p}}
<input name="next" type="hidden" value="/home_page/" />
<input type="submit" value="Login">
</form>
{% endblock %}
link to login
=============
<a href="{% url django.contrib.auth.views.login %}">Login</a>
login()を呼び出した後、ユーザーの有効なインスタンスが表示されますか? – Sid
django.contrib.auth.views.loginのデバッグログイン後にUserインスタンスが正しく作成された方法はわかりますが、home_pageビューには表示されません。 – juankysmith
私は何をしているのか明らかに間違っていることはありません。たぶんあなたの全体のviews.pyを貼り付けると、手がかりを与えるかもしれません。また、/ home_pageビューに@login_requiredを入れてみてください。(ログイン後にここをリダイレクトする必要はありませんが) – Sid