4

我遇到了一个非常奇怪的问题,即我的路线在开发模式下运行良好,但在生产中却不行。

我的大部分应用程序都包含在一个引擎中,该引擎被加载到主应用程序中,主应用程序的路由文件像这样开始......

SandersteadParish::Application.routes.draw do
  mount Cms::Engine => "/cms"

我在引擎中的路由文件的前几行看起来像这样......

Cms::Engine.routes.draw do
  scope '(groups/:group_id)' do
  resources :pages do
    resources :widgets
      collection do
      post :layout, :add_panel, :split_panel
    end
  end

如果我运行 RAILS_ENV=development rails server,路由工作正常,但如果我运行 RAILS_ENV=production,它们不会被加载。

4

1 回答 1

0

当您添加添加引擎时,默认情况下是“隔离的”,这意味着需要使用引擎范围访问它的所有路由,例如Cms.pages_path您可以在此处找到更多信息http://edgeguides.rubyonrails.org/engines.html#routes

于 2015-10-22T15:49:58.263 回答