我有一个使用基于AbstractUser的自定义用户模型的Django Web应用程序。
用户注册后,他们可以上传音频文件,然后填充音频播放器。
我想分为免费和付费两层。免费用户只能上传5个音频文件。付费用户可以无限上传。
我将提供3个订阅计划,每月,半年(6个月)和每年。
目前在我的django项目中有两个组。 “免费用户”和“金牌会员”。
在上传视图中,检查一个用户是否上传了5个文件,并且它们是“免费用户”组的成员,然后将它们重定向到一个页面,该页面必须是该成员。此页面将包含以下三个选项。 。 。
我已经在Stripe中创建了我的计划,并安装了dj-stripe。
我当时想让流程像这样:
用户注册,他们自动成为“免费用户”组的成员。我有执行此操作的代码。
成功注册后,他们将被重定向到订阅页面,在该页面上,他们可以选择每月,半年或每年的订阅。将在三列中分别包含功能/定价和结帐按钮。底部是“以免费用户身份继续”,最多可上传5次。
一旦用户注册了其中一项计划,就应该将其组从“免费用户”更改为金牌会员。
我认为我需要弄清楚如何使用Web挂钩将与客户/用户有关的事件通知我的服务器/项目。
因此,基本上,当进行新订阅时,Stripe会将事件发送到我的服务器,服务器将更改用户组。如果用户的订阅失效,则服务器会将组更改回“免费用户”,直到问题解决。
我已经下载了Ngrok进行尝试和测试,但我什至不知道该过程是什么。我知道我想做什么,但不确定如何去做。
让我知道您想看什么代码。告诉我我需要阅读的内容,以了解如何执行此操作。如果我运行
python manage.py djstripe_init_customers
python manage.py djstripe_sync_plans_from_stripe
命令我可以在django admin中看到我的计划,而我可以在Stripe admin中看到我的用户。
我会创建一个“订阅”应用,并在那里有用于订阅按钮等的模型和视图吗?