Пример #1
0
def goodlist(request, typeid, pageid, sort):
    count = request.session.get('count')
    # 获取最新发布的商品
    newgood = GoodsInfo.objects.all().order_by("-id")[:2]
    # 根据条件查询所有商品
    if sort == '1':  # 按添加时间
        sumGoodList = GoodsInfo.objects.filter(
            gtype__id=typeid).order_by('-id')
    elif sort == '2':  # 按价格
        sumGoodList = GoodsInfo.objects.filter(
            gtype__id=typeid).order_by('gprice')
    elif sort == '3':  # 按点击量
        sumGoodList = GoodsInfo.objects.filter(
            gtype__id=typeid).order_by('-gclick')

    # 分页
    paginator = Paginator(sumGoodList, 15)
    goodList = paginator.pagee(int(pageid))
    pindexlist = paginator.page_range

    # 确定商品类型
    goodtype = TypeInfo.objects.get(id=typeid)

    # 构造上下文
    context = {
        'title': '商品详情',
        'list': 1,
        'guest_cart': 1,
        'goodtype': goodtype,
        'newgood': newgood,
        'goodList': goodList,
        'typeid': typeid,
        'sort': sort,
        'pindexlist': pindexlist,
        'pageid': int(pageid),
        'count': count
    }
    # 渲染返回结果
    return render(request, 'df_goods/list.html', context)