views.py 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. from django.shortcuts import render
  2. from django.shortcuts import HttpResponse
  3. from newsApp.models import MyNew
  4. from django.db.models import Q
  5. from productsApp.models import Product
  6. from django.views.decorators.cache import cache_page
  7. # Create your views here.
  8. @cache_page(60 * 15)
  9. def home(request):
  10. newList = MyNew.objects.all().filter(~Q(
  11. newType='通知公告')).order_by('-publishDate')
  12. postList = set()
  13. postNum = 0
  14. for s in newList:
  15. if s.photo:
  16. postList.add(s)
  17. postNum += 1
  18. if postNum == 3:
  19. break
  20. if (len(newList) > 7):
  21. newList = newList[0:7]
  22. noteList = MyNew.objects.all().filter(
  23. Q(newType='通知公告')).order_by('-publishDate')
  24. if (len(noteList) > 4):
  25. noteList = noteList[0:4]
  26. productList = Product.objects.all().order_by('-views')
  27. if(len(productList)>4):
  28. productList = productList[0:4]
  29. return render(request, 'home.html', {
  30. 'active_menu': 'home',
  31. 'postList': postList,
  32. 'newList': newList,
  33. 'noteList': noteList,
  34. 'productList':productList,
  35. })
  36. # html='<html><body>首页</body></html>'
  37. # # return HttpResponse(html)
  38. # return render(request, 'home.html',{'active_menu':'home',})