Django的商业整合
django-mercadopago-simple的Python项目详细描述
从4.2.0开始,此包将在pypi上重命名为django mercadopago。 请更新您的参考资料。导入和模块保持不变。
django mercadopago simple是一个用于与 MercadoPago,目标很简单, 只涉及基本的用例。
功能
我们的目的不是覆盖上游api的100%特性,而是 而是提供一个简单的应用程序,允许接受和跟踪付款。这个 对于购物车、在线销售等简单的网站就足够了。
拉取请求总是受欢迎的。请不要犹豫,如果你 遇到问题。新功能通常只在需要时添加,但是 同样,如果提交修补程序,则接受。
安装
安装通常应通过pip:
pip install django-mercadopago-simple
配置
您需要获得您的api凭据(app id和secret key) here并创建一个Account 反对他们。此创建可以通过包含在 此应用程序或以编程方式。
您还应该像这样公开通知端点:
url(r'^mercadopago/', include('django_mercadopago.urls'), namespace='mp'), # Make sure namespace is 'mp', since we assume it is for notification URL # contruction.
注意,这些端点是必需的,因为通知回调不会 在没有他们的情况下工作。
还有一些django设置可配置此应用程序的行为:
巯基化合物自动处理
必需
如果MERCADOPAGO_AUTOPROCESS是True,则通知将作为 一旦收到。否则,由开发人员处理。 创建通知时,始终会触发一个信号,并且 如果不是自动处理,则模式是让芹菜任务处理它们:
@receiver(notification_received) def process_notification(sender, **kwargs): tasks.process_notification.delay(notification=sender)
商业支付后视图
必需
设置MERCADOPAGO_POST_PAYMENT_VIEW必须定义视图的名称 用户在付款后被重定向的位置。此视图将作为 参数为此付款创建的通知的id。
巯基硫醇宿主
必需
MERCADOPAGO_BASE_HOST定义用于通知URL的域名。 它将被置于公开通知终结点的确切url之前。
用法
Mercadopago允许您创建首选项,稍后将收到 通知(指示是否已付款或发生了什么事):
self.preference = Preference.objects.create( title='the product name', price=10.0, reference='order-38452', success_url='http://example.com/mp_done', account=account, )
如果您的应用程序只使用一个Mercadopago帐户,请使用:
account = Account.objects.first()
最后,您可以使用 post_update挂钩:
@receiver(post_save, sender=MercadoPagoPayment) def process_payment(sender, instance=None, created=False, **kwargs): do_stuff()
向后兼容性
版本2.0.0对数据库模式进行了很大的更改。而旧数据是 保留,一些丢失的字段必须填写。自动生成的数据将具有 负键值,应该容易识别。
遗憾的是,无法自动填写此数据。然而,在那里 不涉及数据丢失。