我有以下路线
namespace :page do
match '/about' => 'pages#show', slug: 'page_about'
match '/contact' => 'pages#show', slug: 'page_contact'
end
在开发和登台中,进入页面/关于进入正确的页面。但是在生产中,我收到一个uninitialized constant Page::PagesController
错误
我有以下路线
namespace :page do
match '/about' => 'pages#show', slug: 'page_about'
match '/contact' => 'pages#show', slug: 'page_contact'
end
在开发和登台中,进入页面/关于进入正确的页面。但是在生产中,我收到一个uninitialized constant Page::PagesController
错误
当您只有一个 PagesController 时会发生该错误。在路由中使用命名空间希望您拥有,使用您的案例,Page::PagesController。将您的路线更改为
match '/page/about' => 'pages#show', slug: 'page_about'
match '/page/contact' => 'pages#show', slug: 'page_contact'
您不应该在这里使用命名空间,而且我不知道您为什么要传递“slug”。对于像这样的简单路线,您只需要这样:
get "/page/about"
get "/page/contact"
这些产生以下内容rake routes
:
pages_about GET /pages/about(.:format) pages#about
pages_contact GET /pages/contact(.:format) pages#contact