AttributeError at / payment / cards - PullRequest
       44

AttributeError at / payment / cards

0 голосов
/ 23 апреля 2020

Я пытаюсь разработать сайт электронной коммерции. По какой-то причине я получаю эту ошибку, хотя карты, кажется, приписывают правильно.

Мои views.py:

@login_required
def PaymentView(request):

    try:
        the_id = request.session['cart_id']
        cart = Cart.objects.get(id=the_id)
        order = Order.objects.get(cart=cart)
    except:
        the_id = None
        return redirect(reverse("myshop-home"))

    if request.method == "POST":
        try:
            user_stripe = request.user.userstripe.stripe_id
            customer = stripe.Customer.retrieve(user_stripe)
        except:
            customer = None
            pass
        if customer is not None:
            token = request.POST.get('stripeToken')
            card = customer.cards.create(card=token)
            charge = stripe.Charge.create(
                amount= 400, 
                currency="usd",
                card= card,
                customer = customer,
                description = "Charge for %s" %(self.request.user.username)
            )

В чем здесь проблема?

Ответы [ 2 ]

0 голосов
/ 23 апреля 2020

Как видно из документов Stripe, вы можете создать карту для клиента , например:

stripe.Customer.create_source(
  "cus_xxx",
  source="tok_yyy",
)
0 голосов
/ 23 апреля 2020

В этой строке: card = customer.cards.create (card = token) Я думаю, что вы хотите создать экземпляр карты.

Чтобы создать объект, вы должны сделать что-то вроде этого: YourModel.objects.create (....) https://docs.djangoproject.com/en/3.0/topics/db/queries/#creating -объекты

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...