我在django 1.11中使用django-registration。在docs之后 我把网址设置得很好。但是登录的用户会看到登录页面和注册页面(对我来说没有意义)。
我在网址中尝试redirect_authenticated_user=True
,适用于登录页面,而不是注册并在loggout上崩溃。
我的问题是:
redirect_authenticated_user=True
'那些我想要的?obs。:我只使用网址和模板od Django-registration
答案 0 :(得分:1)
如果您的注册和登录页面是单独的路线,对于注册路线,请尝试以下方式:
def signup(request):
if request.user.is_authenticated():
# redirect if user is already logged in
return HttpResponseRedirect(...)
else:
# do signup stuff
如果表单位于同一页面上,或者已注册和未注册用户的内容位于同一页面上,则可以在模板中使用与上述相同的if语句,以选择性地隐藏/显示已登录用户的内容: / p>
{% if user.is_authenticated %}
<!-- HTML FOR SIGNED IN USER -->
{% else %}
<!-- HTML FOR UNREGISTERED USER -->
{% endif %}
并确保所有需要您登录的路线,在功能上方都有@login_required
装饰器。