假设我们有一个简单的SAAS,它提供两种类型的计划。例如,在最便宜的计划中,您最多可以创建20个列表,而在下一个计划中,您可以创建最多50个列表。这只是定价模型的一个特征。假设定价模型基于每个计划的4-5个不同功能,那么检查和执行这些限制的好做法是什么?
我猜,(乱七八糟的)方法是在不同的地方添加一堆‘if’,例如:if $user->plan->limitReached,执行以下操作。
也许另一种方法是在用户操作上抛出某种类型的事件,并以更“集中”的方式处理检查?你对这个场景有什么想法?如有任何建议,我们将不胜感激。谢谢
发布于 2016-12-30 05:02:50
Laravel 5.3有一个叫做Policies的特性。
有了这些,您可以创建复杂的逻辑来允许或拒绝用户的请求或任何事情。
这是官方的Laravel授权用户操作的方式。
它还允许您整理用户模型和控制器类,并重用代码。
https://stackoverflow.com/questions/40842160
复制相似问题