首页 > 解决方案 > 如何在 Stripe 内循环

问题描述

我有一个问题,我想在 Stripe 内循环以在结帐时创建动态多个对象。之后我不能这样做,stripe.checkout.Session.create()因为我得到一个错误。我也无法在 for 循环中创建 JSON 对象stripe.checkout.Session.create()。有任何想法吗?如何使用 for 循环并创建多个line_items?

def create_checkout_session(request):
    if request.method == "GET":
        try:
            cart = Cart.objects.get(order_user=request.user)
            checkout_session = stripe.checkout.Session.create(
                payment_method_types=['card', 'p24'], 
                    line_items=[{
                        'price_data': {
                            'currency': 'eur',
                            'product_data': {
                            'name': 'total'
                            },
                            'unit_amount': cart.total,
                        },
                        'quantity': 1,
                        }],

标签: pythondjangostripe-payments

解决方案


您应该能够line_items根据需要进行迭代准备,然后传递准备好的数组:

count = 5
lineItems = []
for i in range(count):    
    lineItems.append({...})

checkout_session = stripe.checkout.Session.create(
  line_items=**lineItems**,
  ...
)

推荐阅读