Keine Beschreibung

views.py 2.8KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  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, Store
  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 view_store(request, store_id):
  40. store = Store.objects.get(pk=store_id)
  41. articles = Post.objects.filter(top_store = store, status='publish').order_by('-created_at')[:5]
  42. return render(request, 'front/view_store.html', {'store': store, 'articles': articles})
  43. def stores(request):
  44. top_stores = Post.objects.filter(cat__name="Top Stores", status="publish").order_by("-created_at")
  45. #new stores
  46. new_stores = Store.objects.all().order_by("-created_at")[:5]
  47. return render(request, "front/stores.html", {'top_stores': top_stores, 'new_stores': new_stores})
  48. def search(request):
  49. form = SearchForm(request.GET)
  50. results = None
  51. if form.is_valid():
  52. o = form.save(commit = False)
  53. o.created_by = request.user
  54. o.save()
  55. q = Q()
  56. q2 = Q()
  57. if o.content_cat != None:
  58. q = q & Q(cat = o.content_cat)
  59. if o.product_type != None:
  60. q2 = q2 & Q(product_type = o.product_type)
  61. q = q & ( Q(title__contains = o.q ) | Q(body__contains = o.q))
  62. q2 = q2 & ( Q(name__contains = o.q ) | Q(description__contains = o.q))
  63. r1 = Post.objects.filter(q)
  64. r2 = Product.objects.filter(q2)
  65. results = list(sorted(chain(r1, r2), key = lambda obj: obj.created_at, reverse = True))
  66. return render(request, "front/search.html", {'form': form, 'results': results})
  67. def mystore(requeset):
  68. pass
  69. def success(request):
  70. return render(request, 'front/success.html')
  71. def tracking(request):
  72. return render(request, 'front/tracking.html')
  73. def my404(request,exception):
  74. return render(request, 'front/404.html')
  75. #return redirect("index")