from django.shortcuts import render, redirect from .models import Item from django.views.generic.base import View from django.contrib.auth import logout from django.contrib.auth.views import LoginView from .forms import RegisterUserForm, ItemForm class index(View): def get(self, request): items = Item.objects.all()[:5] return render(request, 'index.html', {'items': items}) def search(request): return render(request, 'main/search.html') def services(request): return render(request, 'main/services.html') def profile(request): return render(request, 'main/profile.html') login_view = LoginView.as_view(template_name='accounts/login.html') def register(request): if request.method == "POST": form = RegisterUserForm(request.POST) if form.is_valid(): user = form.save(commit=True) # создание объекта без сохранения в БД user.set_password(form.cleaned_data['password']) user.save() return render(request, 'accounts/registration_done.html') else: form = RegisterUserForm() return render(request, 'accounts/registration.html', {'form': form}) def logout_view(request): logout(request) return redirect('index') def add_item(request): if request.method == "POST": form = ItemForm(request.POST, request.FILES) if form.is_valid(): form.save() return redirect('index') else: form = ItemForm() return render(request, 'main/add_item.html', {'form': form})