在服务类中使用 rails 引擎路径助手

Obr*_*ios 2 ruby-on-rails rails-engines

我在我的 rails 应用程序中安装了一个引擎。在控制器中,我可以通过在路径前加上引擎名称来访问引擎路径助手,例如myengine.articles_path. 我想在服务类中访问这些助手。通常我会包括 url_helpers 即

class SomeService
  include Rails.application.routes.url_helpers

end
Run Code Online (Sandbox Code Playgroud)

这允许我访问我的主应用程序中的助手,例如root_path,但是如果我尝试myengine.articles_path我得到

undefined local variable or method `myengine'
Run Code Online (Sandbox Code Playgroud)

如何访问服务类或类似模块中的引擎路径助手?

jul*_*lez 6

它必须放入 class << self

class SomeService
  class << self
   include Rails.application.routes.url_helpers
  end
end
Run Code Online (Sandbox Code Playgroud)