def order_create(request): cart = Cart(request) if request.method == 'POST': form = OrderCreateForm(request.POST) if form.is_valid(): order = form.save() order.user = request.user order.save() for item in cart: OrderItem.objects.create(order=order, product=item['product'], price=item['price'], quantity=item['quantity']) # очистка корзины cart.clear() # запуск асинхронной задачи order_created.delay(order.id) # set the order in the session request.session['order_id'] = order.id # redirect to the payment return redirect(reverse('payment:process')) else: form = OrderCreateForm return render(request, 'orders/order/create.html', { 'cart': cart, 'form': form })
def order_create(): form = OrderCreateForm() if form.validate_on_submit(): cart = Cart() if len(cart) == 0: return redirect(url_for('index')) order = Order(form.name.data, form.phone.data, form.address.data) order.create(cart) cart.clear() return render_template('shop/cart/created.html', form=form, order=order) return render_template('shop/cart/create.html', form=form)