我正在djanog中创建登录注册。而且我无法根据不同的用户类型重定向登录。如果可以举任何例子,将不胜感激。
答案 0 :(得分:0)
您需要通过继承来创建自己的LoginView
from django.contrib.auth.views import LoginView
然后您需要覆盖函数
def get_success_url(self)
所以您的LoginView会像
from django.contrib.auth.views import LoginView
CustomLoginView(LoginView):
def get_success_url(self):
if self.user.type = 'USER_TYPE':
return 'YOUR_CUSTOM_URL'
然后您需要在URL中指定创建的登录视图
path('login/',CustomLoginView.as_view(template_name='ur .HTML',name='login')
答案 1 :(得分:-1)
在您的urls.py文件中
from django.contrib.auth.views import LoginView
urlpatterns =[
path('login/',LoginView.as_view(template_name='ur .HTML',name='login')
]
在您的HTML文件中:-
<form method='POST'>
{% csrf_token %}
{{ form.as_p }}
<input type='submit' value='Submit'>
</form>
如果您想在任何AnonymusUser尝试进入您的项目的SETTINGS.py文件中时重定向到登录页面,请执行以下操作:
LOGIN_URL = 'login'
如果您要在登录后从登录页面重定向:--- 在您的settings.py文件中:----
LOGIN_REDIRECT_URL = 'name of the url u want to redirect'