views.py 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. from django.contrib.auth.views import LoginView, LogoutView
  2. from django.db.models import Q
  3. from django.shortcuts import render
  4. from django.urls import reverse_lazy
  5. from django.views import generic
  6. from django.views.generic import TemplateView, CreateView
  7. from .forms import *
  8. from .models import *
  9. # Create your views here.
  10. class ProductView(generic.ListView):
  11. model = Product
  12. template_name = 'index.html'
  13. context_object_name = 'product'
  14. def get_queryset(self):
  15. return Product.objects.filter()[:5]
  16. class Login(LoginView):
  17. template_name = 'Login.html'
  18. class Logout(LogoutView):
  19. success_url = 'index.html'
  20. class CreateProduct(CreateView):
  21. form_class = ProductCreate
  22. model = Product
  23. success_url = '/'
  24. class RegisterUser(CreateView):
  25. success_url = reverse_lazy('index')
  26. template_name = 'register.html'
  27. form_class = RegisterUserForm
  28. class ServiceView(generic.ListView):
  29. model = Product
  30. template_name = 'Product.html'
  31. context_object_name = 'Servise'
  32. class Profile(TemplateView):
  33. template_name = 'profile.html'
  34. class ProductOneView(generic.ListView):
  35. model = Product
  36. template_name = 'ProductOne.html'
  37. context_object_name = 'productone'
  38. def get_queryset(self): # new
  39. query = self.request.GET.get("q")
  40. object_list = Product.objects.filter(
  41. )
  42. return object_list
  43. class SearchResultsView(generic.ListView):
  44. model = Product
  45. template_name = "search_results.html"
  46. def get_queryset(self): # new
  47. query = self.request.GET.get("q")
  48. object_list = Product.objects.filter(
  49. Q(name__icontains=query)
  50. )
  51. return object_list