Я хочу перенаправить на разные страницы на основе учетных данных для входа в django.
Например: есть два имени для входа
Если я войду с учетными данными X, тогда я буду быть перенаправлены на X-страницу. Находясь на той же самой странице входа в систему, если я войду с учетными данными Y, я буду перенаправлен на соответствующую страницу Y.
Я пытался поместить условие в файл user_login views.py, но это выдает мне следующую ошибку.
Exception Type: NoReverseMatch
Exception Value:
Reverse for 'companyDashboard.html' not found. 'companyDashboard.html' is not a valid view function or pattern name.
Мой файл views.py
from django.shortcuts import render
from django.template import RequestContext
from wfhApp.forms import UserForm
from django.contrib.auth import authenticate, login, logout
from django.http import HttpResponseRedirect, HttpResponse
from django.urls import reverse
from django.contrib.auth.decorators import login_required
# Create your views here.
@login_required
def company_dashboard(request):
return render(request, 'wfhApp/company_dashboard.html')
@login_required
def companyDashboard(request):
return render(request, 'wfhApp/companyDashboard.html')
@login_required
def user_logout(request):
logout(request)
return HttpResponseRedirect(reverse('index'))
def user_login(request):
if request.method == 'POST':
username = request.POST.get('username')
password = request.POST.get('password')
user = authenticate(username= username, password=password)
if user:
if user.is_active:
if user.username == 'prashant':
login(request, user)
return HttpResponseRedirect(reverse('company_dashboard.html'))
elif user.username == 'saurabh':
login(request, user)
return HttpResponseRedirect(reverse('companyDashboard.html'))
else:
return HttpResponse("Account Not Exists")
else:
return HttpResponse("Account Not Active")
else:
print("Someone tried to login and failed")
print("Username: {} and Password: {}".format(username, password))
return HttpResponse("Invalid Login Details")
else:
return render(request, 'wfhApp/login.html')
Спасибо за Ваше время и внимание.