django订阅_使用Django和Stripe设置订阅和定期付款

2023-11-02

django订阅

如果您熟悉Stripe,就会知道他们在在线支付处理领域中有多大的球员。 他们的API不仅使程序员可以轻松地为诸如电子商务商店之类的网站创建一次性付款,而且还为每月订阅和路由付款提供了快速集成。 如果对Django和Stripe不熟悉,请查看我们最近的有关一次性付款集成的文章 。 否则,让我们开始使用Django和Stripe设置每月付款。

为什么要按月订阅?

每月订阅是在网络上常见的一种惯例,特别是在那些推广软件即服务(SAAS)作为其交付模型的公司中。 例如,诸如Hubspot(市场营销),Dropbox(数据存储)和Mailchimp(电子邮件市场营销)之类的SAAS公司都为其潜在客户提供了分层定价选项。 考虑到一旦计算出基本指标(客户获取成本,生命周期价值,客户流失率)就更容易预测收入,许多人认为此模型是有利的。 当然,可预测的收入可以创造稳定并产生更准确的财务预测。

Mailchimp定价页面


Django设定

首先设置虚拟环境并创建一个基本的Django项目。 我们将创建一个名为saas的新虚拟环境。

注意:在Mac上,对所有命令使用python3而不是py

C:\Users\Owner\Desktop\code>py -m venv saas

接下来,将目录更改为虚拟环境,安装Django,然后设置您的项目和应用程序。

C:\Users\Owner\Desktop\code>cd saas

C:\Users\Owner\Desktop\code\saas>Scripts\activate

(saas) C:\Users\Owner\Desktop\code\saas>pip install Django

(saas) C:\Users\Owner\Desktop\code\saas>django-admin startproject mysite

(saas) C:\Users\Owner\Desktop\code\saas\mysite>py manage.py startapp main

将主应用程序添加到mysite中settings.py中。

settings.py

INSTALLED_APPS = ['main.apps.MainConfig' , #add this
    'django.contrib.admin' ,
    'django.contrib.auth' ,
    'django.contrib.contenttypes' ,
    'django.contrib.sessions' ,
    'django.contrib.messages' ,
    'django.contrib.staticfiles' ,
]

文件夹中创建urls.py ,并将其包含在mysite> urls.py中

mysite> urls.py

from django.contrib import admin
from django.urls import path, include #add include

urlpatterns = [
	path( '' , include( 'main.urls' )),  #add path
    path( 'admin/' , admin.site.urls),
]

条纹整合

首先安装用于连接Stripe API的官方库。

pip install --upgrade stripe

接下来,创建一个Stripe帐户,并在其仪表板中创建产品。 尽管可以使用Stripe CLI来执行此操作,但由于我们已经在创建帐户页面上,因此我们将使用仪表板。 确保您处于测试模式,并且只能查看测试数据。 默认情况下,创建帐户后,您应该处于测试模式。 单击左侧导航菜单中的产品。 创建两个新产品:

  • 将产品命名为高级计划
  • 添加描述“高级功能的付费计划”
  • 使用标准定价
  • 输入$ 15.00并确保选择“重复”
  • 保持结算期为“每月”
  • 命名产品企业计划
  • 添加描述“高级功能的企业计划”
  • 使用标准定价
  • 输入$ 30.00并确保选择“重复”
  • 保持结算期为“每月”
  • 现在,让我们在Stripe仪表板中同步产品。 虽然我们可以创建模型并存储相关产品信息(例如产品ID)作为模型字段,但更简单的解决方案是仅安装dj-stripe程序包并使用sync命令。 我们还需要在settings.py中添加我们的API密钥。 请注意,您的活动密钥应始终受到保护,并且永远不会在设置中列出。 有关保护环境变量的更多信息,请查看Python保护。

    pip install dj-stripe

    mysite / settings.py

    STRIPE_TEST_PUBLIC_KEY ='pk_test_E52Nh0gTCRpJ7h4JhuEX7BIO006LVew6GG'
    STRIPE_TEST_SECRET_KEY = 'sk_test_L87kx7GQNbz9tajOluDts7da00mSbze3dW'
    STRIPE_LIVE_MODE = False  # Change to True in production
    DJSTRIPE_WEBHOOK_SECRET = "whsec_xxx"

    最后迁移数据库。 注意:如果数据库是sqlite,则迁移所需的时间比平时长。

    py manage.py migrate

    使用以下命令将产品自动添加到数据库:

    py manage.py djstripe_sync_plans_from_stripe
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

django订阅_使用Django和Stripe设置订阅和定期付款 的相关文章

随机推荐

  • JMJS系统总结系列----JMJS中接口使用的技术(六)

    三同时接口 调用外部的webService A 添加WebService引用 using JMJS BusinessLogic IsSupervisionsServiceReference B 具体调用 public class IsSup
  • MySQL表操作:提高数据处理效率的秘诀(进阶)(1)

    生命不在于相信奇迹 而在于创造奇迹 朱学恒 作者 不能再留遗憾了 专栏 MySQL学习 本文章主要内容 MySQL对表操作进阶 数据库约束 表的设计 新增 后续会更新进阶表的查询 文章目录 前言 1 数据库约束 NULL约束 UNIQUE
  • VTK 测量类Widget的应用 与 vtkDistanceWidget 3D测试 问题

    vtkDistanceWidget 用于在二维平面上测量两点之间的距离 vtkAngleWidget 用于在平面的角度测量 AngleWidget 感觉这都是 2D控件 include
  • nvm use 无法切换npm的解决办法

    nvm正常的安装目录结构 没有正常切换时对应的文件结构 3 解决方法 nvm use 无效 即 nvm use 后执行nvm ls 当前使用的版本前正常是会有 标注 可是nvm use 所有版本前都没有 我当前使用的版本是 6 10 0 我
  • 编写一个类实现银行账户Account的概念

    编写一个类实现银行账户Account的概念 包含的属性有 帐号 密码 存款余额 利率rate 最小余额 定义封装这些属性的方法 账号要自动生成 编写主类 使用银行账户类 输入 输出3个储户的上述信息 考虑 哪些属性可以设计成static属性
  • 【APP自动化测试必知必会】Appium之微信小程序自动化测试

    本节大纲 H5 与小程序介绍 混合 App 元素定位环境部署 混合 App 元素操作 Airtest 测试 App 01 H5与小程序介绍 H5概述 H5 是指第 5 代 HTML 也指用 H5 语言制作的一切数字产品 所谓 HTML 是
  • springboot2整合redis超简单

    依赖
  • [开发

    同时支持中国手机和固定电话号码的正则表达式 const pattern 1 3 9 d 9 0 d 2 3 d 7 8 d 1 5 说明 表示字符串的开始 1 3 9 d 9 0 d 2 3 d 7 8 d 1 5 使用逻辑或 将两个正则表
  • 分布式任务调度框架xxljob2.2.0详细安装使用教程

    分布式任务调度框架xxljob2 2 0详细安装使用教程 简介 概述 特性 总体设计 源码目录介绍 调度数据库 配置 架构设计 设计思想 系统组成 架构图 安装 环境 创建目录 下载 解压 初始化调度数据库 调度数据库表说明 配置部署 调度
  • 安装Visio2010 64bit时提示不能安装32位版本的Office 2010 ,因为您当前已经安装了64位Office产品的解决方法(亲测可行)

    电脑是64位的 从网上找了64位的Visio2010但是安装的时候却提示不能安装32位版本的Office 2010 因为您当前已经安装了64位Office产品 如下 然后就找到了一个解决办法 链接 https pan baidu com s
  • 网页防篡改把服务器顶满,网页防篡改技术

    网页防篡改技术 网页防篡改技术包括时间轮询技术 核心内嵌技术 事件触发技术 文件过滤驱动技术等 时间轮询技术利用网页检测程序 以轮询方式读出要监控的网页 与真实网页相比较 来判断网页内容的完整性 对于被篡改的网页进行报警和恢复 但是由于目前
  • java多态练习_Java课堂练习——多态

    一 ATM机 import java util Scanner abstract class drawmoney public abstract double getMoney double a double n class drawmon
  • dbeaver设置mysql驱动

    dbeaver 默认是没有配置mysql驱动的 方式1 可访问外网 无办公防火墙拦截 直接联网更新驱动即可 方式2 有防火墙拦截 无法更新驱动 驱动属性 编辑驱动 选择本地的mysql驱动文件 可选择maven仓库中的mysql驱动jar
  • 程序员必知的23种设计模式之访问者模式

    文章目录 1 模式引出 测评系统需求 2 传统方案 2 1 传统方式代码 3 访问者模式基本介绍 3 1 UML原理类图 3 2 对原理类图的说明 即 访问者模式的角色及职责 4 方案修改 5 双分派 6 访问者模式的注意事项和细节 6 1
  • TCP服务器epoll的多种实现

    TCP服务器epoll的多种实现 对于网络IO会涉及到两个系统对象 用户空间中进程或者线程 操作系统内核 比如发生read操作时就会经历两个阶段 等待数据就绪 将数据从内核缓冲区拷贝到用户缓冲区 由于各个阶段多有不同的情况 一组合么就产生了
  • 机器学习(一)

    一 数据结构的组成 数据结构大部分为 特征值 目标值 但是也有些数据没有目标值 在机器学习中常常使用pandas来进行数据的处理以及基本格式的调节 一 特征值 一般情况下 能反映出目标所存在的特征的数值为特征值 例如 我们要判断一个人的性别
  • PE文件资源解析(三)图标组资源的解析

    图标组资源 在这里指的是资源类型为RT GROUP ICON的资源信息 通过ResHacker看到的效果图如下 既然是图标组 里面肯定包含很多组图标 解析代码如下 HRSRC hResrc FindResource hModule lpNa
  • 详解DHCP部署与安全方案:保护你的网络免受攻击

    数据来源 这篇文章涉及一些IP地址的基础知识 不熟悉的可以先看这一篇 IP地址详解 1 DHCP作用 DHCP 动态主机配置协议 是一个局域网的网络协议 指的是由服务器控制一段IP地址范围 客户机登录服务器时就可以自动获得服务器分配的IP地
  • Python环境配置

    Python环境配置 Python编辑器安装 如何将Python添加到环境变量 1 找到Python环境变量的位置 2 添加Python路径到环境变量 3 验证添加是否成功 添加路径过程可能会遇到的问题 输入 Python 命令后弹出Win
  • django订阅_使用Django和Stripe设置订阅和定期付款

    django订阅 如果您熟悉Stripe 就会知道他们在在线支付处理领域中有多大的球员 他们的API不仅使程序员可以轻松地为诸如电子商务商店之类的网站创建一次性付款 而且还为每月订阅和路由付款提供了快速集成 如果对Django和Stripe