Как я могу настроить различные представления для обычных пользователей и администратора с помощью django?
Я попробовал нижеприведенную функцию просмотра. Но страница обычного пользователя 'studenthpage' не отображается, в то время как суперпользователь может войти. вместо 'elif user.is_active:' я даже попробовал просто else условие, но все равно не получилось. может кто-нибудь помочь
def login(request):
if request.method == 'POST':
username = request.POST.get('username')
password =request.POST.get('password')
user = authenticate(request, username=username, password=password)
if user is not None :
auth_login(request,user)
if user.is_superuser:
return redirect('adminhpage')
elif user.is_active:
return redirect('studenthpage')
else:
messages.info(request, 'Username OR password is incorrect')
context = {}
return render(request, 'login.html', context)
Я предполагаю, что вы, вероятно, входите в систему как user, имеющий статус superuser, поэтому он всегда входит как администратор. Убедитесь, что user, с которым вы входите в систему, не имеет статуса superuser и посмотрите, работает ли это.