对于用户可以是member
或admin
的系统,具有member
角色的用户必须使用定期订阅付费,或者获得免费访问权限。
我目前的做法:
user
数据库表。subscription
表包含用户的记录。subscription_event
表记录每次结算或付款失败。我可以查询这个以查看最后一个事件是否确实是一个成功的付款。但是,如果用户获得“免费”访问权限,我应该如何记录?
complimentary_subscription
,其中用户ID为外键?subscription
?is_complimentary
和complimentary_expires_date
等列添加另一列到其用户行?expires
列?答案 0 :(得分:1)
免费订阅是订阅。到期付款金额和订阅价格为零。它的到期日期是您设置的免费订阅与常规订阅的到期日期。
如果您当前的设置不允许您根据这些因素成功查询免费订阅/用户,则只需要一个单独的列或表。
注意:我假设您目前将用户与订阅价格相关联。无论如何,如果订阅价格在未来发生变化,或者您想为定期或促销用户提供折扣,您还是需要知道。