引擎的routes.rb
:
MyEngine::Engine.routes.draw do
get '/:guid', :to => 'foo_bar#index'
end
通过mount MyEngine::Engine, :at => '/some_route'
主机应用程序中某个助手的某个位置:
generated_link = my_engine.root_path(some_guid_i_got)
结果
undefined method `root_path' for #<ActionDispatch::Routing::RoutesProxy:0x00007ff443d405a0>
我尝试添加include MyEngine::Engine.routes.url_helpers
,但是这打破了许多其他与引擎无关的路线。
引擎除了可以使用此url-helper以外,还可以正常工作,但是我不想在其中硬编码URL。
为/some_route/a-guid-here
生成url的正确方法是什么?
预先感谢
答案 0 :(得分:-1)
该错误让您知道出了什么问题。 undefined method root_path
告诉您找不到定义的root_path
,这是您的路由文件中必须具有的路径。