主要观点:Flipper 从每月每座固定价格起步,后推出多种定价及订阅选项,需支持多套定价和权限,需分离计划和权限,注重封装和客户决策。
关键信息:
- 推出多种定价选项如 per-seat 和 fixed-price,需处理大量条件、权限和测试。
- 从客户体验出发设计定价,创建系统级定价和权限类,支持多版本定价和权限,方便客户比较和切换。
- 分离计划和权限,避免计划模型因权限列增长而混乱,政策不依赖定价,免费客户无需订阅和计划记录。
- 定价是强大杠杆,可改变价格结构,让客户决定,用功能标志推出新定价,维护多种定价方式。
- 利用
ActiveRecord::AssociatedObject
gem 封装计费和权限逻辑,权限遵循与定价类似的模式,注重接口和概念封装。
重要细节: Pricing
类提供定价上下文,Entitlements
类处理权限,可分离不同版本定价和权限,账户可关联不同版本。- 定价版本有编号、名称、摘要、开始日期和关联计划,方便比较和切换。
- 权限 tiers 与定价版本不同,更注重特征配置和覆盖,通过特征和配置定义不同权限层级。
- 用
has_object
关联账户和权限相关对象,提供方便的接口进行权限检查。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。