在 django python 的 pinax-stripe 模块中收取一次性付款时出错
Posted
技术标签:
【中文标题】在 django python 的 pinax-stripe 模块中收取一次性付款时出错【英文标题】:Error in charging a one-off payment in pinax-stripe module of django python 【发布时间】:2017-08-06 18:39:21 【问题描述】:我正在 django 框架中用 python 开发一个应用程序,我必须向客户收取一次性付款。我正在使用 pinax-stripe 模块进行支付(https://github.com/pinax/pinax-stripe)。
当我在我看来像这样向客户收费时:
#views.py
from pinax.stripe.models import *
if customer.can_charge():
customer.charge(15.00) #charge
它给了我以下错误:
异常类型:NameError
异常值:未定义名称“客户”
我知道我需要从 pinax.stripe 导入一些内容到我的应用程序的 views.py 中。有谁知道是什么?
【问题讨论】:
【参考方案1】:你应该看看getting started guide
它提到要创建客户,您需要类似的代码
from pinax.stripe.actions import customers
customer = customers.create(user=new_user)
编辑
如果客户对象已经存在,您可以尝试使用类似的方法获取它
customer = Customer.objects.get(user=relevant_user) # or similar
【讨论】:
我试过你的方法,但恐怕还是同样的错误:( 相同,但从 pinax.stripe.actions 导入客户添加到顶部。我在客户注册时初始化他们,但我现在也使用 ./manage.py init_customers 手动完成 仅添加导入是不够的,您需要定义客户变量。因此,要么像上面第二行那样创建它,要么查询数据库以获取它(如果它已经存在)。 我添加了这个,但是它给出了以下错误:重复的键值违反了唯一约束“pinax_stripe_customer_user_id_key”详细信息:键(user_id)=(1)已经存在。 好的,它已经存在了。需要取而代之。进行了修改。以上是关于在 django python 的 pinax-stripe 模块中收取一次性付款时出错的主要内容,如果未能解决你的问题,请参考以下文章
django / python 快速开发体现在啥地方?有多快捷呢?