我有过之前的“过滤器 h在我的主要应用控制器中,这种控制器具有类似之处:(它只是在闪电中设置了链接,但信息与问题无关,它只是从该方法的路线上进入)
class ApplicationController < ActionController::Base
before_filter :set_link
def set_link
flash[:notice] = items_path
end
end
This works fine for the app, however when I go into the controllers for an engine I made I get the exception
No route matches {:controller=>"items", :action=>"index"}
我的理解是,在发动机中,除非事先贴上<条码>main_app,否则这些路线的助动器是用于发动机的。
So changing the method in the application controller to
def set_link
flash[:notice] = main_app.items_path
end
排除了例外情况,但我确实不想这样做。 是否有另一种办法使发动机认识到主要——应用路线?
EDIT:
如果申请的布局需要路人帮助,也会出现这种情况。 因此,如果该发动机的设计是为了融入主要——应用布局,那么这一问题也会随之而来。