"multi-visit pass" 场景中是否有 Rails gem 法力 gement?

Is there a Rails gem for management of a "multi-visit pass" scenario?

我是 Rails 菜鸟。我希望实现一个应用程序,用户可以在其中购买多次访问通行证,然后每周花费积分。

例如,注册并登录,然后在健身房购买 10 次就诊 - 系统应列出 10 次剩余就诊 。注册 class 并列出 9 次剩余访问 。当积分不足时,提醒用户再次充值10次通行证等

我知道我可以使用 Devise and CanCan 来管理身份验证和授权方面。

我的问题是是否已经有一个 gem 来处理用户信用的法力gem,或者我是否需要从头开始写这个。

我已经搜索 https://rubygems.org/gems/rails 但没有成功,但我完全有可能遗漏了一些明显的东西。

我不认为有 gem 可以做到这一点,但编码应该非常简单:

  • remaining_visits 添加到您的用户模型并 table。
  • 购票时current_user.update(remaining_visits: current_user.remaining_visits+10)
  • 将 Devise 会话控制器复制到 app/controllers/devise/sessions_controller.rb
  • 在此控制器中,将这种代码添加到 create(用户登录的位置):current_user.update(remaining_visits: current_user.remaining_visits-1).

注意:您可以覆盖 create 操作,而不是复制 Devise 会话控制器。