12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- from django.contrib.auth.views import LoginView
- from django.shortcuts import render, redirect
- from django.contrib.auth import authenticate, login, logout
- from django.contrib.auth.forms import UserCreationForm
- from django.contrib.auth.decorators import login_required
- from .forms import OrderForm
- from .models import Product, Order
- def home(request):
- return render(request, 'shop/home.html')
- def search_result(request):
- return render(request, 'shop/search_result.html')
- def register(request):
- if request.method == 'POST':
- form = UserCreationForm(request.POST)
- if form.is_valid():
- user = form.save()
- login(request, user)
- return redirect('home')
- else:
- form = UserCreationForm()
- return render(request, 'shop/register.html', {'form': form})
- @login_required
- def profile(request):
- # Ваш код для страницы профиля
- return render(request, 'shop/profile.html')
- login = LoginView.as_view(template_name='shop/login.html')
- def service(request):
- products = Product.objects.all()
- return render(request, 'shop/service.html', {'products': products})
- def product_detail(request, product_id):
- product = Product.objects.get(pk=product_id)
- return render(request, 'shop/product_detail.html', {'product': product})
- @login_required
- def order(request, product_id):
- product = Product.objects.get(pk=product_id)
- if request.method == 'POST':
- form = OrderForm(request.POST)
- if form.is_valid():
- order = form.save(commit=False)
- order.user = request.user
- order.product = product
- order.save()
- return redirect('profile')
- else:
- form = OrderForm()
- return render(request, 'shop/order.html', {'form': form, 'product': product})
- def logout_view(request):
- logout(request)
- return redirect('home')
- def login_view(request):
- if request.method == 'POST':
- username = request.POST['username']
- password = request.POST['password']
- user = authenticate(request, username=username, password=password)
- if user is not None:
- login(request, user)
- return redirect('home')
- return render(request, 'shop/login.html')
|