当我从登录页面启动我的Django项目时,url显示如下:
http://127.0.0.1:8000/login/?next=/
但我只想要这个:
http://127.0.0.1:8000/login
隐藏显示在网址上的下一个参数的方法是什么? 我已将登录URL和登录重定向URL设置为settings.py:
settings.py
LOGIN_URL = '/login/'
LOGIN_REDIRECT_URL = '/'
urls.py
urlpatterns = [
url(r'^$',views.index,name='home'),
url(r'login/$',views.userLogin,name='login'),
]
答案 0 :(得分:1)
此行为位于django.contrib.auth中的AccessMixin。
如果您不喜欢它,请继承LoginRequiredMixin
并覆盖redirect_field_name
以返回''
或None
。之后您需要将此mixin用于要强制登录的视图。
你应该有充分的理由。通常如上面的评论中已经提到的,这种行为很有用。