【发布时间】:2011-03-11 13:06:06
【问题描述】:
我使用 this link 修复了 rails 3 中的 RoutingError。我想将用户重定向到根页面,所以我添加了:
match '*a', :to => 'homes#index'
到我的 routes.rb。
问题是:我可以在这个 'match' 行中定义 flash[:error] 消息以显示在目标页面上吗?
问候, 马特乌斯
【问题讨论】:
我使用 this link 修复了 rails 3 中的 RoutingError。我想将用户重定向到根页面,所以我添加了:
match '*a', :to => 'homes#index'
到我的 routes.rb。
问题是:我可以在这个 'match' 行中定义 flash[:error] 消息以显示在目标页面上吗?
问候, 马特乌斯
【问题讨论】:
这类似于Redirect and raise flash message when catch-all in routes
但我确实遇到了这个问题,这给了我一个问题,因为我使用的是MATCH,而当我使用GET 时,alert 不会闪烁。最终,我使用上面的线程并以另一种方式应用 GET 找到了一个可行的解决方案。
match '*path' => redirect{ |p, req| req.flash[:alert] = "The page you requested is not valid."; '/' }, via: [:get]
这是我最终想出的,via: [:get] 是让一切顺利进行的关键。
记得把这样的代码放在routes.rb的末尾
【讨论】: