Как показать страницу просмотра пароля перед фактической страницей просмотра в django?
Я создал веб-приложение дневника на Django. Оно хранит все дневники в зашифрованном виде. Я хочу запрашивать пароль, когда пользователь пытается просмотреть, обновить или удалить свой дневник. Это не означает, что требуется вход в систему. Я хочу запрашивать пароль пользователя, даже если он вошел в систему. Я пытался создать декоратор для этого, но не смог его завершить. У меня есть два представления:
Этот вид проверяет правильность пароля:
def check_master_password_view(request):
page = 'check'
profile = request.user.profile
if request.method == "POST":
checked = check_master_password(request.POST['password'], profile.master_password)
if checked:
return checked # OR Redirect another page
else:
messages.error(request, 'You entered wrong password !')
context = {
'page':page,
}
return render(request, 'users/create_or_check_master_password.html', context)
Другой вид - детальный вид:
def detail_diary_view(request, pk):
profile = request.user.profile
diary = profile.diary_set.get(id=pk)
diary.diary = decrypt_diary(request, diary.diary)
context = {
'diary': diary
}
return render(request, 'diary/detail_diary.html', context)
Когда пользователь нажимает на ссылку для просмотра дневника, я хочу показать представление check_master_password. Если пользователь вводит правильный пароль, я хочу перенаправить его на реальную страницу (просмотр, обновление, удаление страниц). Как я могу это сделать?