Beispiel #1
0
def exibe_produto(request, id, slug_do_produto):
    produto = get_object_or_404(Product, id=id)
    carrinho = Carrinho(request)
    qtd = carrinho.get_quantidade_total(produto.id)
    form = QuantidadeForm(initial={'quantidade': qtd, 'id': produto.id})

    return render(request, 'carrinho/exibe_produto.html', {'produto': produto})
Beispiel #2
0
def exibe_produto(request, id, slug_do_produto):
    produto = get_object_or_404(Produto, id=id)
    carrinho = Carrinho(request)
    qtd = carrinho.get_quantidade_total(id)
    form = QuantidadeForm(initial={
        'quantidade': qtd,
        'produto_id': signer.sign(id)
    })

    return render(request, 'carrinho/exibe_produto.html', {
        'produto': produto,
        'form': form
    })
Beispiel #3
0
def lista_produtos(request, slug_da_categoria=None):
    categoria = None
    categorias = Categoria.objects.all().order_by('nome')
    lista_de_produtos = Produto.objects.filter(
        disponivel=True).order_by('nome')
    if slug_da_categoria:
        categoria = get_object_or_404(Categoria, slug=slug_da_categoria)
        lista_de_produtos = lista_de_produtos.filter(
            categoria=categoria).order_by('nome')

    paginator = Paginator(lista_de_produtos, 12)
    pagina = request.GET.get('pagina')
    try:
        produtos = paginator.page(pagina)
    except PageNotAnInteger:
        produtos = paginator.page(1)
    except EmptyPage:
        if request.is_ajax():
            return HttpResponse('')
        produtos = paginator.page(paginator.num_pages)

    carrinho = Carrinho(request)
    lista_de_forms = []
    for produto in produtos:
        qtd = carrinho.get_quantidade_total(produto.id)
        lista_de_forms.append(
            QuantidadeForm(initial={
                'quantidade': qtd,
                'produto_id': signer.sign(produto.id)
            }))

    if request.is_ajax():
        return render(request, 'carrinho/pagina_de_produtos.html',
                      {'listas': zip(produtos, lista_de_forms)})

    return render(
        request, 'carrinho/lista_produtos.html', {
            'categorias': categorias,
            'listas': zip(produtos, lista_de_forms),
            'categoria': categoria
        })
Beispiel #4
0
def lista_produtos(request, slug_da_categoria=None):
    categoria = None
    categorias = Category.objects.all().order_by('name')
    produtos = Product.objects.filter(available=True).order_by('name')
    if slug_da_categoria:
        categoria = get_object_or_404(Category, slug=slug_da_categoria)
        produtos = produtos.filter(category=categoria).order_by('name')

    carrinho = Carrinho(request)
    lista_de_forms = []
    for produto in produtos:
        qtd = carrinho.get_quantidade_total(produto.id)
        lista_de_forms.append(
            QuantidadeForm(initial={
                'quantidade': qtd,
                'produto_id': produto.id
            }))

    return render(
        request, 'carrinho/lista_produtos.html', {
            'categorias': categorias,
            'listas': zip(produtos, lista_de_forms),
            'categoria': categoria
        })