我为用户订阅付费服务制作了一个巨大的Django表单。它包含用户数据,用户首选项和用户付款信息。
如您所知,stripe.js is intended to work this way:
似乎它被认为仅用于信用卡表格(没有额外数据)。结果,这就是提交表单时发生的事情:
问题是,如果他们在表单中的其他位置出错,我不想强迫我的用户重新输入信用卡信息。
我明白为什么所有这一切都会发生但有办法解决这个问题吗? 我认为Django表单向导可能是单向的,它是?有一个更简单的吗?
非常感谢。
答案 0 :(得分:0)
我不是Django专家,所以我不能在这里提供显式代码,但是信用卡数据被发送到Stripe(通过Stripe.js)并返回代表性令牌。该令牌存储在隐藏的表单输入中,以便它转到服务器端代码。
在您的情况下,我倾向于将令牌重新存储在隐藏表单输入中,并指示信用卡已被占用。如果您相应地动态调整验证逻辑,那么当问题的其他信息出现时,您就不能重新要求信用卡。
干杯, 拉里
PS我在Stripe的支持工作。