我有一个收集信用卡信息的注册表。工作流程如下:
- 用户通过条带输入注册数据和卡数据。
- 该表格已针对注册数据进行验证。
- 如果表格有效,则处理付款。
- 如果付款通过,一切都很好,用户已注册并继续前进。
- 如果付款失败,我希望能够在表单的隐藏字段上引发验证错误。那可能吗?
这是表单提交代码:
def register():
form = RegistrationForm()
if form.validate_on_submit():
    user = User(
        [...]
    )
    db.session.add(user)
    #Charge
    amount = 10000
    customer = stripe.Customer.create(
        email=job.company_email,
        card=request.form['stripeToken']
    )
    try:
        charge = stripe.Charge.create(
            customer=customer.id,
            amount=amount,
            currency='usd',
            description='Registration payment'
        )
    except StripeError as e:
        ***I want to raise a form validation error here if possible.***
    db.session.commit()
    return redirect(url_for('home'))
return render_template('register.html', form=form)