我正在尝试创建条带检出,但是当我尝试从数据库中获取金额或将数据存储在会话中时,检出并不会重定向到条带检出页面。
results=Cart.query.filter_by(username = current_user.username, session_id = session['coded'])
total = sum([cart.amount for cart in results])
但是,如果我将total替换为integer,它将起作用。该查询非常准确。怎么了?
@posts.route('/checkout')
def checkout():
results=Cart.query.filter_by(username = current_user.username, session_id = session['coded'])
total = sum([cart.amount for cart in results])
session = stripe.checkout.Session.create(
payment_method_types=['card'],
line_items=[{
'price_data': {
'currency': 'usd',
'product_data': {
'name': 'T-shirt',
},
'unit_amount': total,
},
#'price': 'price_1GznR1BlIKnRHDeI80wgnj0A',
'quantity': 1,
}],
mode='payment',
success_url=url_for('posts.processing', _external=True) + '?session_id={CHECKOUT_SESSION_ID}',
cancel_url=url_for('posts.viewcart', _external=True),
)
答案 0 :(得分:1)
我宣布会议为全球会议。我确保金额是整数
@posts.route('/checkout')
def checkout():
global session
results=Cart.query.filter_by(username = current_user.username, session_id = session['coded'])
#results=Cart.query.filter_by(username = current_user.username, session_id = session['coded']).all()
total = int(sum([cart.amount for cart in results]))
print(results)
session = stripe.checkout.Session.create(
payment_method_types=['card'],
line_items=[{
'price_data': {
'currency': 'usd',
'product_data': {
'name': 'T-shirt',
},
'unit_amount': total,
},
#'price': 'price_1GznR1BlIKnRHDeI80wgnj0A',
'quantity': 1,
}],
mode='payment',
success_url=url_for('posts.processing', _external=True) + '?session_id={CHECKOUT_SESSION_ID}',
cancel_url=url_for('posts.viewcart', _external=True),
)
return jsonify(checkout_session_id=session['id'], checkout_public_key=current_app.config['STRIPE_PUBLIC_KEY'])
答案 1 :(得分:0)
您需要执行查询:
results=Cart.query.filter_by(username = current_user.username, session_id = session['coded']).all()