如何在 rails 引擎中使用 declartive_Authorization

how to use declartive_Authorization in rails engine

我在我的应用程序中使用了 declartive_Authorization。但我希望这也是我的 rails 引擎,无需重复规则。否则我必须再次在轨道引擎中使用 declartive_Authorization 但这不是 DRY 概念。

提前致谢。

您只需要在 authorization_rules.rb 文件中使用您的 engine 名字和 Model 名字。 declarative_authorizationrails engine 中也能完美运行。

例如:

Rails engine中,有一个控制器叫

module MyEngine
  class UsersController < ApplicationController
    filter_resource_access collection: [:index]
  end
end

所以您将规则定义为:

has_permission_on :my_engine_users, :to => [:index]