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')
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})