访问视图/控制器外部的rails引擎路由助手

Pcu*_*ing 17 ruby-on-rails

我无法在任何地方找到它,只是跟它一起走,所以我想其他人可能会受益.如何在引擎中访问rails url helpers?

对于核心应用程序,我可以这样做:

class Thingy < ActiveRecord::Base    
 include Rails.application.routes.url_helpers
 ...
end
Run Code Online (Sandbox Code Playgroud)

但这在引擎中的模型中不起作用.

Pcu*_*ing 9

看起来您需要指定特定于您的引擎的路线.因此,在您的引擎模型中,您可以执行以下操作:

module Blog
 class Stuffy
  include Blog::Engine.routes.url_helpers
  ...
 end
end
Run Code Online (Sandbox Code Playgroud)

现在,您可以在引擎模型中使用引擎中的url助手.