我使用订阅按钮列出了我们所有的计划,如下所示(django模板语法):
class SubscribePageView(generic.TemplateView):
def post(self, request, *args, **kwargs):
stripe.api_key = settings.STRIPE_SECRET_KEY
user = self.request.user
token = request.POST.get('stripeToken')
customer = stripe.Customer.create(
source=token,
plan=[[WHERE DOES THIS COME FROM??]],
email=user.email,
)
user.customer_id = customer.id
user.save()
然后我创建客户/订阅以响应此表单的POST:
/*** load the router ***/
$registry->router = new router($registry);
但是在那时我没有计划ID传回Stripe。 :/
我这样做有各种错误吗?
答案 0 :(得分:5)
所有Stripe结帐脚本都会将令牌插入表单中的隐藏字段,然后将整个表单提交到您的服务器。如果您需要任何其他信息,例如计划,您也应该在表单中包含该信息:
<form method="POST" action=".">
{% csrf_token %}
<input type="hidden" name="plan" value="{{ plan.id }}">
<script....>
</form>
现在,您可以通过request.POST['plan']
访问该计划。