Exemplo n.º 1
0
 def get(self, *args, **kwargs):
     cart = Cart(self.request)
     if len(cart) < 1:
         return redirect('cart')
     profile = Profile.objects.get(user=self.request.user)
     new_order = Order(customer=profile, status=0)
     new_order.save()
     # new_order.save()
     for item in cart:
         print(item)
         ordered_item = OrderItems(
             order=new_order,
             item=item['item'],
             price_on_order_date=item['item'].get_raw_price_with_discount,
             quantity=item['quantity'])
         ordered_item.save()
     # new_order.save()
     cart.clear()
     return redirect('orders')
Exemplo n.º 2
0
def order_create(request):
    cart = Cart(request)
    if request.method == 'POST':
        form = OrderCreateForm(request.POST)
        if form.is_valid():
            order = form.save(commit=False)
            if cart.coupon:
                order.coupon = cart.coupon
                order.discount = cart.coupon.discount
            order.user = request.user
            order.order_number = get_random_string(
                10, allowed_chars=string.ascii_uppercase + string.digits)
            order.save()
            for item in cart:
                OrderItem.objects.create(order=order,
                                         product=item['product'],
                                         price=item['price'],
                                         quantity=item['quantity'])
            cart.clear()
            send_order_creat_email(order)
            return render(request, 'order/created.html', {'order': order})
    else:
        form = OrderCreateForm()
    return render(request, 'order/create.html', {'cart': cart, 'form': form})