【发布时间】:2016-03-23 09:54:40
【问题描述】:
所以在我们的 Rails 4.2 应用程序中,有一个 alchemy_cms gem,它要求在 config/routes.rb 中最后安装它的路由。
SampleApp::Application.routes.draw do
#other routes for the rails app here
# :
# :
mount Alchemy::Engine => '/'
end
我们得到像“/somehacker/routingurl”这样的路由,然后由 Alchemy::Engine 处理,导致默认的 500 错误。如果我想做一个自定义 404 错误,那么正确的方法是构建一个自定义 404 页面并让 Alchemy 处理重定向?否则,由于 Alchemy 文档指定它必须是 config/routes.rb 中的最后一条路由,因此无法添加一条包罗万象的路由以重定向到我认为的某种错误页面。
编辑:
其中一个问题是,有些路由类似于上面的无效“somehacker”路由,确实需要由 Alchemy 路由引擎解析,例如“/en/us”,其中“en”是有效的语言环境。这就是为什么我最初想将路由处理放在 Alchemy 引擎的路由文件中。
【问题讨论】: