使用cancan / pundit在activeadmin中使用相同模型的两个页面进行不同的基于角色的访问

问题描述 投票:1回答:1

我有一个Payroll模型,使用它我必须在活动管理员中创建两个不同的页面,每个页面的列和逻辑略有变化。

ActiveAdmin.register Payroll do
end

ActiveAdmin.register Payroll, as: "Customised Payroll" do
end

在Cancan或Pundit中,授予对Payroll的访问权限(因为策略名称与模型名称绑定)会导致Payroll和Customized Payroll一起显示。我希望Payroll可以被一组角色访问,而Customized Payroll可以通过一组不同的角色访问。

我无法使用具有条件逻辑/范围的相同页面进行显示。它必须是两页。如何为两个页面提供不同的基于角色的访问权限?

ruby-on-rails activeadmin cancan pundit
1个回答
0
投票

您可以为此创建重复模型:

class CustomisedPayroll < Payroll
end

和activeadmin的资源customised_pa​​yroll.rb之后,您将能够为两个资源创建能力

© www.soinside.com 2019 - 2024. All rights reserved.