【发布时间】:2017-04-30 00:49:49
【问题描述】:
所以我有一个项目,其中包含用户身份验证和某些模型的历史跟踪。对于我使用 paper_trail gem 的历史,我在过滤历史以显示给用户时遇到了问题,我已将其配置为将 current_user id 跟踪到 Whodunnit 字段中。 我的用户有 role_id 指定角色表中的角色 我还有另一个表,其中包含一些具有 id 和 user_id 字段的项目。现在我的问题是如何根据用户的角色从版本表中获取特定的行,例如:如果用户角色是“SomeRole”,它必须只返回具有相同角色“SomeRole”的用户所做的那些操作'。 我知道我可以通过
@versions = PaperTrail::Version.order('created_at')
但不知道如何过滤以仅选择满足我使用的那些。有没有一种简单的方法可以做到这一点,或者我应该像一个一个地选择一样对其进行硬编码,而不是检查他们角色的所有 user_id 等等?希望你能理解我乱七八糟的解释方式
【问题讨论】:
标签: ruby-on-rails paper-trail-gem