我必须创建一个帐户创建模式,这基本上是一个三步过程。
在第1步中,我们使用带密码的电子邮件ID并确认密码。
第2步:用户可以选择基本,标准和高级订阅计划,然后选择
步骤3:付款模块,我们要求您提供卡明细和选定计划的付款。
成功的订阅用户重定向到仪表板后。我必须设计架构。
答案 0 :(得分:0)
第1步-没有理由保留确认密码。仅应在客户端检查。 因此,我们只需要电子邮件和密码(哈希:密码+ salt [email / userid]) 确保在用户注册时您检查电子邮件
第2步-应该是索引,例如0-未订阅,1-基本,2-标准,3-高级
第3步-这样最好不要保留。只需使用在线清算的API即可获取付款和付款确认。
我应该添加订阅日期字段。以及订阅到期的日期。 祝你好运。
已编辑
let schema = new Schema({
email: { type: String, validate: validateEmail }, //The validate Email should be a function that get as value the email and return true or false if it is valid! (email format/not duplicated)
subscription: { type: Number },// 0-non. 1-basic, 2-standard, 3-premium (this will be set by the payment)
subscriptionDate: { type: Date },
subscriptionExpr: { type: Date }//This also will be set by the payment, and will be checked before any service giving. making sure the subscription is still valid.
});
这是您需要的最基本方案。您可以通过将数组中的最后三个字段用于跟踪用户过去的订阅计划来使其更加复杂。