eva*_*phy 3 redirect routing ruby-on-rails ruby-on-rails-3
在Rails 3中,您可以设置根路径以从config/routes.rb重定向到其他位置:
root :to => redirect("/dashboard")
Run Code Online (Sandbox Code Playgroud)
这有效,除了它消除了传递给root的任何flash参数.你怎么能通过重定向传递它们?
更新: James Chen的解决方案,即重写路线声明root :to => redirect { |p, req| req.flash.keep; "/dashboard" },对我有用.但有两件事我不明白:
p代表,params?我尝试使用do/ end和换行符重写块:
root :to => redirect do |p, req|
req.flash.keep
"/dashboard"
end
Run Code Online (Sandbox Code Playgroud)
但这失败了"ArgumentError:不支持重定向参数".为什么是这样?
Jam*_*hen 11
使用flash.keep.
在路由文件中为重定向写一个proc:
root :to => redirect { |p, req| req.flash.keep; "/dashboard" }
Run Code Online (Sandbox Code Playgroud)
因此,从正常重定向到根URL的flash params将被传递:
redirect_to root_url, :notice => "test flash notice"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3097 次 |
| 最近记录: |