|
@@ -1,10 +1,14 @@
|
|
|
-from django.shortcuts import render
|
|
|
+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 index(request):
|
|
|
- return render(request, 'index.html')
|
|
|
-
|
|
|
-def login(request):
|
|
|
- return render(request, 'main/login.html')
|
|
|
|
|
|
def search(request):
|
|
|
return render(request, 'main/search.html')
|
|
@@ -15,5 +19,33 @@ def services(request):
|
|
|
def profile(request):
|
|
|
return render(request, 'main/profile.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})
|
|
|
+
|