我仅在生产中遇到此错误,并且在开发中(例如在本地服务器上(没有问题。我想知道我在生产中还需要改变什么,因为对于所有其他支付集成,我从未遇到过与开发模式不同的问题。它弹出条纹形式,然后出现绿色勾号,之后我收到此错误。
视图:
if request.method == 'POST':
stripe_token = request.form['stripeToken']
email = request.form['stripeEmail']
try:
customer = stripe.Customer.create(
email=email,
source=request.form['stripeToken']
)
subscription = stripe.Subscription.create(
customer=customer.id,
plan="monthly",
)
student_id = profile_data.id
student.stripe_customer_id = customer.id
student.stripe_subscription_id = subscription.id
package = Package(
student_id=student_id,
stripe_id = customer.id,
student_email=request.form['stripeEmail'],
is_active=True,
package_type='monthly',
subscription_id=subscription.id
)
dbase.session.add(package)
flash("You've successfully subscribed for monthly package.")
dbase.session.commit()
except stripe.error.CardError as e:
# The card has been declined
body = e.json_body
err = body['error']
return redirect(url_for('all_plans', key=key, amount=amount))
错误:
Traceback (most recent call last):
File "/home/connect/myvenv/lib/python3.4/site-packages/flask/app.py", line 1836, in __call__
return self.wsgi_app(environ, start_response)
File "/home/connect/myvenv/lib/python3.4/site-packages/flask/app.py", line 1820, in wsgi_app
response = self.make_response(self.handle_exception(e))
File "/home/connect/myvenv/lib/python3.4/site-packages/flask_restful/__init__.py", line 265, in error_router
return original_handler(e)
File "/home/connect/myvenv/lib/python3.4/site-packages/flask/app.py", line 1403, in handle_exception
reraise(exc_type, exc_value, tb)
File "/home/connect/myvenv/lib/python3.4/site-packages/flask/_compat.py", line 33, in reraise
raise value
File "/home/connect/myvenv/lib/python3.4/site-packages/flask/app.py", line 1817, in wsgi_app
response = self.full_dispatch_request()
File "/home/connect/myvenv/lib/python3.4/site-packages/flask/app.py", line 1477, in full_dispatch_request
rv = self.handle_user_exception(e)
File "/home/connect/myvenv/lib/python3.4/site-packages/flask_restful/__init__.py", line 265, in error_router
return original_handler(e)
File "/home/connect/myvenv/lib/python3.4/site-packages/flask/app.py", line 1381, in handle_user_exception
reraise(exc_type, exc_value, tb)
File "/home/connect/myvenv/lib/python3.4/site-packages/flask/_compat.py", line 33, in reraise
raise value
File "/home/connect/myvenv/lib/python3.4/site-packages/flask/app.py", line 1475, in full_dispatch_request
rv = self.dispatch_request()
File "/home/connect/myvenv/lib/python3.4/site-packages/flask/app.py", line 1461, in dispatch_request
return self.view_functions[rule.endpoint](**req.view_args)
File "/home/connect/GZ/server/views.py", line 1643, in monthly
subscription = stripe.Subscription.create(
AttributeError: type object 'Subscription' has no attribute 'create'
此错误表示您的生产环境中安装了旧版本的 Stripe Python 库。订阅的创建方法已添加到 2016-05-04 发布的版本 1.33.0 上。您至少需要在生产环境中使用该版本。