【问题标题】:How to implement a role system based on points akin to stackoverflow如何实现基于类似于stackoverflow的点的角色系统
【发布时间】:2011-12-19 18:48:27
【问题描述】:

我目前正在 Rails3 中构建一个应用程序,您可以在其中获得积分以执行各种操作,并且我想实现一个系统,例如 stackoverflow,您可以获得更多的管理员权限,因为您获得的积分越多。

那么在 Rails 中实现这样一个系统的最佳方式是什么?我想让它不要变得太复杂。您是否会拥有大量角色并不断添加并从用户中删除它们?或者我应该只比较用户有多少积分和他们需要做某事的积分。不过,第二个选项的好处是,如果他们尝试在没有足够分数的情况下做某事,我可能会生成一条错误消息。

我正在考虑为此使用CanCan,但我愿意接受建议。我刚刚找到了CanTango,这似乎很有趣。它只是extends CanCan

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3 cancan


    【解决方案1】:

    按照你最初的建议去做。这让您可以将角色与点数分离,以便您以后可以在需要时更轻松地调整对局。

    此外,还有潜在的性能优势,因为您只是在查找用户的角色。通过基于积分的链接,您可能会遇到性能问题,具体取决于您存储获得/扣除的积分的方式。

    【讨论】:

      猜你喜欢
      • 2014-08-02
      • 2016-11-09
      • 2021-09-16
      • 1970-01-01
      • 2014-05-01
      • 2013-08-01
      • 2015-11-07
      • 1970-01-01
      • 2021-03-08
      相关资源
      最近更新 更多