【发布时间】:2015-10-13 16:34:36
【问题描述】:
我正在尝试使用已定义的 Pundit 策略获取我的应用中所有模型的列表。
在那之前,我正在使用此代码进行检查:
current_user = User.first
ActiveRecord::Base.send(:subclasses).map { |subclass| subclass.name if
Pundit.policy(current_user, subclass.new) }
但是当我使用 Globalize gem 时,在收集时出现以下错误,作为抽象类,它无法实例化
NotImplementedError: Globalize::ActiveRecord::Translation is an
abstract class and cannot be instantiated.
有没有办法覆盖这个错误?在实例化子类之前在 if 测试中插入一些检查 我也可以从子类列表中删除这个 Globalize 表
["HABTM_Groups", "HABTM_Roles", "HABTM_Groups", "HABTM_Roles", "User", "HABTM_Groups", "HABTM_Roles", "AccessLevel", "Company", "Document", "Group", "Globalize::ActiveRecord::Translation", "HABTM_Users", "Message", "Profile", "RestrictedActivity", "RestrictedAttribute", "Role", "HABTM_Users", "Sheet"]
感谢反馈
【问题讨论】: