Няма описание

views.py 2.4KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. from django.shortcuts import render, redirect
  2. from backend.models import Patient
  3. from cms.models import Post
  4. from fruit.models import Product
  5. from .forms import SearchForm
  6. from itertools import chain, tee
  7. from operator import attrgetter
  8. from django.db.models import Q
  9. # Create your views here.
  10. def index(request):
  11. if request.method == "POST":
  12. print(request.POST)
  13. print(request.FILES)
  14. p = Patient()
  15. p.first_name = request.POST.get('firstName')
  16. p.last_name = request.POST.get('lastName')
  17. #p.idcard = request.POST.get('idCard')
  18. p.address = request.POST.get('address')
  19. p.geolocation = request.POST.get('geo')
  20. p.birth_date = request.POST.get('bd')
  21. p.comment = request.POST.get('comment')
  22. p.tel = request.POST.get('tel')
  23. p.line_id = request.POST.get('line_id')
  24. p.photo = request.FILES.get('photo')
  25. p.patient_status = "request"
  26. p.save()
  27. return redirect('success')
  28. return render(request, 'front/index.html')
  29. def news(request):
  30. pass
  31. def forum(request):
  32. pass
  33. def articles(request):
  34. pass
  35. def fruit_market(request):
  36. pass
  37. def agri_market(request):
  38. pass
  39. def stores(request):
  40. top_stores = Post.objects.filter(cat__name="Top Stores", status="publish").order_by("-created_at")
  41. return render(request, "front/stores.html", {'top_stores': top_stores})
  42. def search(request):
  43. form = SearchForm(request.GET)
  44. results = None
  45. if form.is_valid():
  46. o = form.save(commit = False)
  47. o.created_by = request.user
  48. o.save()
  49. q = Q()
  50. q2 = Q()
  51. if o.content_cat != None:
  52. q = q & Q(cat = o.content_cat)
  53. if o.product_type != None:
  54. q2 = q2 & Q(product_type = o.product_type)
  55. q = q & ( Q(title__contains = o.q ) | Q(body__contains = o.q))
  56. q2 = q2 & ( Q(name__contains = o.q ) | Q(description__contains = o.q))
  57. r1 = Post.objects.filter(q)
  58. r2 = Product.objects.filter(q2)
  59. results = list(sorted(chain(r1, r2), key = lambda obj: obj.created_at, reverse = True))
  60. return render(request, "front/search.html", {'form': form, 'results': results})
  61. def mystore(requeset):
  62. pass
  63. def success(request):
  64. return render(request, 'front/success.html')
  65. def tracking(request):
  66. return render(request, 'front/tracking.html')
  67. def my404(request,exception):
  68. return render(request, 'front/404.html')
  69. #return redirect("index")