quote_from_bytes () ожидаемые байты - PullRequest
0 голосов
/ 23 декабря 2019

Я Неби. Я понятия не имею, что означает эта ошибка. Я получаю эту ошибку при создании карты сохранения полосы на модели userprofile.

views.py

class PaymentStripe(LoginRequiredMixin, View):
def get(self, *args, **kwargs):
    order = get_object_or_404(Order, user=self.request.user, ordered=False)
    if order.billing_address:
        context = {'order': order, 'coupon': CouponForm, 'display_coupon_form': False}
        userprofile = self.request.user.userprofile
        if userprofile.one_click_purchasing:
            card = stripe.Customer.list_sources(
                userprofile.stripe_customer_id,
                limit="3",
                object="card" # getting error from this line
            )
            card_list = card['data']
            if len(card_list)>0:
                context.update({
                    'card': card_list[0]
                })
            return render(self.request, 'pay-with-stripe.html', context)
        # else:
        #     return render ( self.request, "checkout-page.html", context )
    else:
        messages.warning(self.request, 'Please, fill up the form first.')
        return redirect('home:checkout')

def post(self, *args, **kwargs):
    order = Order.objects.get ( user=self.request.user, ordered=False )
    form = PaymentForm(self.request.POST)
    userprofile = UserProfile.objects.get(user = self.request.user)
    if form.is_valid():
        token = form.cleaned_data.get('stripeToken')
        save = form.cleaned_data.get('save')
        use_default = form.cleaned_data.get('use_default')
        if save:
            if userprofile.stripe_customer_id != '' and userprofile.stripe_customer_id is not None:
                customer = stripe.Customer.retrieve(userprofile.stripe_customer_id)
                customer.sources.create(source=token)
                userprofile.stripe_customer_id = customer['id']
                userprofile.one_click_purchasing = True
                userprofile.save()
            else :
                customer = stripe.Customer.create (
                    email=self.request.user.email,
                )
                customer.sources.create ( source=token )
                userprofile.stripe_customer_id = customer['id']
                userprofile.one_click_purchasing = True
                userprofile.save ()

Любая информация об этой ошибке и как ее избежать?

Traceback (последний последний вызов):

  File "C:\Users\Milann\PycharmProjects\eShop\items\views.py", line 253, in get
    object="card"
  File "C:\Users\Milann\AppData\Local\Programs\Python\Python37-32\lib\urllib\parse.py", line 850, in quote_plus
    string = quote(string, safe + space, encoding, errors)
  File "C:\Users\Milann\AppData\Local\Programs\Python\Python37-32\lib\urllib\parse.py", line 834, in quote
    return quote_from_bytes(string, safe)
  File "C:\Users\Milann\AppData\Local\Programs\Python\Python37-32\lib\urllib\parse.py", line 859, in quote_from_bytes
    raise TypeError("quote_from_bytes() expected bytes")
TypeError: quote_from_bytes() expected bytes
[23/Dec/2019 13:42:08] "GET /checkout/stripe/ HTTP/1.1" 500 101207
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...