Django的定期支付/订阅处理,支持不同的支付网关

django-abo的Python项目详细描述


django abo
==


django的定期支付/订阅处理,支持不同的支付网关


**目前django abo处于alpha/beta阶段,请谨慎使用!**

我们希望得到一些反馈,我们需要更多的后端。


*[Paymill](https://www.paymill.com/)



客户对计划的使用

设置设置



>将"abo"添加到您的"已安装"应用程序中:
``python
>已安装的应用程序中:
`(
``abo'abo'abo'abo'abo'abo'abo,

````

>将这些行添加到您的设置中:

``python
``abo'abo.abo.backends.backends.paymill,

>已安装的应用程序中添加"abo"abo.apps+=abo.abo.abo的后端



定义ault_u backend='abo.backends.paymill'

abo_u backends_u settings={
'abo.backends.paymill':{
'paymill_u public_key':'your public key',
'paymill_private_key':'your private key',
'paymill webhook_host':''提示:使用ngrok.com进行测试
}
}
````

2。设置url

在"url.py"中包含付款url:

``python
url patterns=patterns('',

url(r'payment/^',include('abo.urls'),

````

现在,打开http://localhost:8000/payment/subscribe/

3。可选:自定义模板

*django abo*带有自己的模板,因此您不必从头开始。

只需在自己的模板目录中创建一个"abo"子目录,并将自己的模板放在其中即可。
1.确保它们的文件名与原始文件名相同。

例如,从[subscription_success.html]开始(https://github.com/ubergrape/django abo/blob/master/abo/templates/subscription_success.html)

\4。可选:创建自己的计划和订阅模型

*django abo*有两个模型可以轻松扩展。如果你曾经将django的默认用户模型换成你自己的,你会发现这项技术非常相似。


化。

1.创建一个应用程序,如果你还没有,它应该包含你自己的"订阅"模型。例如"付款"1。将自定义的"subscription"模型放在"models.py"中,子类化为"abstractsubscription"。

``python
from django.db import models


from accounts.models import organization
from abo.models import abstractsubscription

class organization(models)。模型:
name

class subscription(abstractsubscription):
organization=models.foreignkey(organization,null=true)
````

1。把这个放在您的设置中:

`` python
订阅模式='payment.subscription'
````

1.为paymill创建自己的视图:

`` python
来自abo.backends.paymill.views import paymill view


class custompaymillview(paymillview):
def form_valid(self,form):
r=super(custompaymillview,self)。form_valid(form)

假设您有一个中间件,它将组织放入请求中。
self.subscription.organization=self.request.organization
self.subscription.save()

返回r
````

1。把它放在你的网址里。py

``python
urlppatterns=patterns('',

模型。如果您创建了自己的定制"计划"模型,请让*django abo*知道它的位置:


```python
`python
plan'papayment.plan'
``



<
<灵感

>*django abo*使用的想法来自:


*[django用户模型](https://docs.djangongoproject.com/en/dev/topics/auth/auth/customizing/定制/\替代-a-custom-custom-user-model-model)同一技术的adjango abo*知道它在哪里是用于交换我的计划和订阅模型
*[django getpaid](https://github.com/cypeess/django-getpaid)-后端抽象等
*[django paymill](https://github.com/ulfur/django-paymill/)-主要是事件/webhook处理
*[django stripe payments](https://github.com/eldarion/django-stripe-payments)-一些architec真正的细节

感谢所有这些项目的贡献者

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java GridBagLayout不填充区域   java Memozied Fibonacci未运行与常规Fibonacci解决方案   Java Web启动未启动问题   Java中异常和if-then的区别   java从命令提示符运行批处理文件获取错误   socket在Java中验证SSL证书的公共名称   如何在JAVA中检查字符串数组中的相等字   用java语言将音频文件转换成文本文件的语音识别   java为什么foo(1,2,3)没有传递给varargs方法foo(对象…)作为整数[]   java通过蓝牙将奇怪的数据从Arduino传输到Android   java ContainerRequestFilter获取空entitystream   java如何从安卓 studio中删除不兼容类型错误   基本Java错误   在Spring引导中使用REST API时发生java错误   javascript通过从SQL查询派生的URL打开页面