回答
你可以把它放在会话,然后重定向回
session[:somekey] = value
redirect_to :back
它为什么要工作? – user1066183
使用会话时,会话中的值保留在请求之间。 – techvineet
是的,但我需要把链接中的参数,我需要一些像这样:http:// localhost:3000 /?locale ='pt' – user1066183
试试这个:
# get a URI object for referring url
referrer_url = URI.parse(request.referrer) rescue URI.parse(some_default_url)
# need to have a default in case referrer is not given
# append the query string to the referrer url
referrer_url.query = Rack::Utils.parse_nested_query(referrer_url.query).
# referrer_url.query returns the existing query string => "f=b"
# Rack::Utils.parse_nested_query converts query string to hash => {f: "b"}
merge({cp: 'foo'}).
# merge appends or overwrites the new parameter => {f: "b", cp: :foo'}
to_query
# to_query converts hash back to query string => "f=b&cp=foo"
# redirect to the referrer url with the modified query string
redirect_to referrer_url.to_s
# to_s converts the URI object to url string
这里有一个问题。 'Rack :: Utils.parse_nested_query(referrer_url.query)'返回带有字符串化键的散列。所以如果你的'referrer_url'有'cp = bar'作为它当前的查询字符串。该网址的查询将是:'cp = bar&cp = foo'。根据需要将'Rack :: Utils.parse_nested_query(referrer_url.query)'改为'Rack :: Utils.parse_nested_query(referrer_url.query).symbolize_keys.'或'Rack :: Utils.parse_nested_query(referrer_url.query).stringify_keys' – DickieBoy
另一种方法可能是通过将它传递“闪光灯”(在重定向请求后它会自动消失):
flash[:somekey] = 'some value'
redirect_to :back
但是,正如我的一位同事指出的,更好的方法是将其作为查询参数返回,以保持其无状态并区分这两个URL。看起来没有一个很好的内置Rails方法来做到这一点,这让我想知道这种方法还有什么问题。
- 1. htacess重定向新参数
- 2. Rails的重定向到指数使用参数
- 3. Rails:使用params重定向
- 4. Rails新动作重定向
- 5. 使用URL参数重定向到rails中的子域
- 6. Rails - 使用参数(路线)重定向URL
- 7. Rails 4 - 用JavaScript重定向到下一页使用Kaminari
- 8. Rails 4&控制器重定向路径
- 9. 301重定向使用URL参数
- 10. htaccess - 301使用GET参数重定向
- 11. htaccess使用参数重定向url
- 12. Play Framework - 使用参数重定向
- 13. 使用htaccess和参数重定向
- 14. 使用参数登录后重定向
- 15. Zend2:使用参数重定向?
- 16. 使用PHP参数重定向URL
- 17. 使用参数重定向失败
- 18. Struts 2使用参数重定向
- 19. 如何使用NSubstitute重定向参数
- 20. 如何使用参数重定向url?
- 21. htaccess重定向到新的参数
- 22. Codeigniter:重定向()刷新/位置参数
- 23. force_ssl使用CloudFlare在Rails 4上重定向循环SSL
- 24. 使用“303参见”重定向的URL使用UrlRewriteFilter重定向
- 25. 使用htaccess将参数重定向到新位置
- 26. 如何在CodeIgniter重定向功能中使用刷新参数
- 27. 使用Rails传递参数4 date_field
- 28. 使用Turbolinks在Rails 4中定期重新加载页面
- 29. 国防部重写 - 用参数重定向到新的网址
- 30. 重定向URL与参数与参数
当你说':back'你是指回到用户来自哪里或某个动作命名为'back?' – tihom
第一个==>:回到 – user1066183
编辑了这个问题以使意思更清楚。 – tihom