Ruby on rails 我如何将当前的\u admin\u用户传递给pundit?
我不使用Ruby on rails 我如何将当前的\u admin\u用户传递给pundit?,ruby-on-rails,ruby,activeadmin,pundit,Ruby On Rails,Ruby,Activeadmin,Pundit,我不使用user仅使用admin\u user 我试着按写的那样做,但对我不起作用 应用程序控制器: class ApplicationController
user
仅使用admin\u user
我试着按写的那样做,但对我不起作用
应用程序控制器:
class ApplicationController
AdminUserPolicy:
def销毁?
pundit_user.id!=admin_user.id
结束
未定义的局部变量或#
我如何将当前的\u admin\u用户传递给pundit
UPD。
aplicationpolicy.rb
类应用程序策略
属性读取器:用户,:记录
def初始化(用户、记录)
@用户=用户
@记录
结束
def索引?
真的
结束
def秀?
真的
结束
def创建?
真的
结束
def新的?
创造?
结束
def更新?
真的
结束
def编辑?
更新?
结束
def销毁?
真的
结束
类范围
属性读取器:用户,:范围
def初始化(用户、作用域)
@用户=用户
@范围=范围
结束
def解析
范围.全部
结束
结束
结束
您也可以发布您的基本应用程序策略
类吗?我不能肯定地说什么,因为您只向我们展示了AdminUserPolicy
的一小部分,而不是整个内容。但您应该定义destroy?
方法的方式可能是:user.id!=record.id
(其中用户
是权威用户,即当前管理员用户
;而记录
是您试图授权对其采取行动的实体,即管理员用户
),每个权威策略只应引用两件事:user
和record
。您不需要在策略上引用pundit\u user
。在那里使用user
,就像你经常使用的那样。@SsPay就像cesartalves指出的那样,用户指的是你当前的\u admin\u用户对象