Quiz

Форк
0
/
views.py 
70 строк · 2.1 Кб
1
from django.shortcuts import render
2
from django.contrib import auth
3
from django.http import HttpResponseRedirect
4
from django.urls import reverse
5
from django.contrib.auth.decorators import login_required
6
from authapp.forms import AuthUserRegisterForm, AuthUserLoginForm, AuthUserEditForm
7

8

9
def login(request):
10
    login_form = AuthUserLoginForm(data=request.POST)
11
    if 'next' in request.GET.keys():
12
        next_value = request.GET['next']
13
    else:
14
        next_value = ''
15
    if request.method == 'POST' and login_form.is_valid():
16
        username = request.POST.get('username')
17
        password = request.POST.get('password')
18

19
        user = auth.authenticate(username=username, password=password)
20
        if user:
21
            auth.login(request, user)
22
            if 'next' in request.POST.keys():
23
                return HttpResponseRedirect(request.POST['next'])
24
            else:
25
                return HttpResponseRedirect(reverse('home'))
26
    context = {
27
        'title': 'Вход',
28
        'login_form': login_form,
29
        'next': next_value
30
    }
31
    return render(request, 'authapp/login.html', context)
32

33

34
def logout(request):
35
    auth.logout(request)
36
    return HttpResponseRedirect(reverse('auth:login'))
37

38

39
def register(request):
40
    if request.method == 'POST':
41
        register_form = AuthUserRegisterForm(request.POST, request.FILES)
42

43
        if register_form.is_valid():
44
            register_form.save()
45
            return HttpResponseRedirect(reverse('home'))
46
    else:
47
        register_form = AuthUserRegisterForm()
48

49
    context = {
50
        'title': 'Регистрация',
51
        'register_form': register_form,
52
    }
53
    return render(request, 'authapp/register.html', context)
54

55

56
@login_required
57
def edit(request):
58
    if request.method == 'POST':
59
        edit_form = AuthUserEditForm(request.POST, request.FILES, instance=request.user)
60
        if edit_form.is_valid():
61
            edit_form.save()
62
            return HttpResponseRedirect(reverse('home'))
63
    else:
64
        edit_form = AuthUserEditForm(instance=request.user)
65

66
    context = {
67
        'title': 'edit',
68
        'edit_form': edit_form,
69
    }
70
    return render(request, 'authapp/edit.html', context)
71

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.