| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 |
- from django.shortcuts import render
- from django.shortcuts import HttpResponse
- from .models import Product
- from django.core.paginator import Paginator
- from django.shortcuts import get_object_or_404
- # Create your views here.
- # def robot(request):
- # html = '<html><body>家用机器人</body></html>'
- # return HttpResponse(html)
- # def monitoring(request):
- # html = '<html><body>智能监控</body></html>'
- # return HttpResponse(html)
- # def face(request):
- # html = '<html><body>人脸识别解决方案</body></html>'
- # return HttpResponse(html)
- def products(request,productName):
- submenu=productName
- if productName=='robot':
- productName='家用机器人'
- elif productName=='monitor':
- productName='智能监控'
- else:
- productName='人脸识别解决方案'
- productList= Product.objects.all().filter(
- productType=productName).order_by('-publishDate')
-
- p = Paginator(productList, 3)
- if p.num_pages <= 1:
- pageData = ''
- else:
- page = int(request.GET.get('page', 1))
- productList = p.page(page)
- left = []
- right = []
- left_has_more = False
- right_has_more = False
- first = False
- last = False
- total_pages = p.num_pages
- page_range = p.page_range
- if page == 1:
- right = page_range[page:page + 2]
- print(total_pages)
- if right[-1] < total_pages - 1:
- right_has_more = True
- if right[-1] < total_pages:
- last = True
- elif page == total_pages:
- left = page_range[(page - 3) if (page - 3) > 0 else 0:page - 1]
- if left[0] > 2:
- left_has_more = True
- if left[0] > 1:
- first = True
- else:
- left = page_range[(page - 3) if (page - 3) > 0 else 0:page - 1]
- right = page_range[page:page + 2]
- if left[0] > 2:
- left_has_more = True
- if left[0] > 1:
- first = True
- if right[-1] < total_pages - 1:
- right_has_more = True
- if right[-1] < total_pages:
- last = True
- pageData = {
- 'left': left,
- 'right': right,
- 'left_has_more': left_has_more,
- 'right_has_more': right_has_more,
- 'first': first,
- 'last': last,
- 'total_pages': total_pages,
- 'page': page,
- }
- return render(
- request,'productList.html',{
- 'active_menu':'products',
- 'sub_menu':submenu,
- 'productName':productName,
- 'productList':productList,
- 'pageData':pageData,
- }
- )
-
- def productDetail(request,id):
- product=get_object_or_404(Product,id=id)
- product.views += 1
- product.save()
- return render(request,'productDetail.html',{
- 'active_menu':'products',
- 'product':product,
- })
|