我有一些引擎安装在另一个引擎中,因为这个引擎将由来自不同引擎的多个子元素组成。该引擎最终安装在主应用程序中。我的路线如下:
Rails.application.routes.draw do
namespace :Parent_Engine, :path => "/foo" do
match "/", :to=>"parent_engine#index"
resources :parent_engine , :only=>[:show] do
mount Engine1::Engine => '/engine1'
mount Engine2::Engine => '/engine2'
end
end
end
现在,当我希望看到来自“engine1”的元素时,我只需将 url 作为
/parent_engine/:id/engine1/object_type/:id
我面临的问题是我需要通过显式更新浏览器中的 url 来阻止用户访问 engine1 的另一个对象。例如:
从:
/parent_engine/1/engine1/object_type/1
至:
/parent_engine/2/engine1/object_type/2
我也不能检查已安装的引擎,因为这些引擎也单独安装在容器应用程序中。我只是不希望用户能够在父引擎的上下文中重定向到另一个对象实例。
感谢并提前向您提供任何帮助。