【问题标题】:In ruby, how do you mess with the back button? Redirect user somewhere if they click back button?在红宝石中,你怎么弄乱后退按钮?如果他们点击后退按钮,将用户重定向到某个地方?
【发布时间】:2015-07-28 12:40:03
【问题描述】:

在 otherform.erb 我有

<%= link_to "Back", redirect "/" %>

但是当我启动我的服务器时,我什至无法查看首页,即使没有按任何按钮。它给了我语法错误,意外的keyword_end,期待')' ...k_to "Back",做erb :index end).to_s); @_out_buf.concat "... ... ^

那么在 erb 文档中控制 ruby​​ 中的后退按钮的正确方法是什么?

【问题讨论】:

  • 你说的是浏览器上的黑色按钮吗?可以参考stackoverflow.com/questions/620962/…
  • 哦,我没有意识到那是为 Rails 设计的。有没有不使用rails的方法?我只是在使用红宝石。
  • 只做link_to "Back", "/"
  • 嗯,现在它说 # 没有方法 link_to
  • 如果您不使用rails(或至少actionview),那么您不能使用link_to,因为这是ActionView::Helpers::UrlHelper 方法。你可以只构建标准的 html &lt;a href="/"&gt;&lt;button&gt;Back&lt;/button&gt;&lt;/a&gt; 不需要 erb

标签: ruby erb back


【解决方案1】:

随便用

redirect_to :back
# is a shorthand for:
redirect_to request.env["HTTP_REFERER"]

回到根目录是“主页”链接,而不是“返回”链接。

【讨论】:

  • 我想在用户点击后退按钮时将其重定向到主页。
  • 所以将root :controller =&gt; 'static', :action =&gt; '/' 添加到您的路线中,然后您可以在需要的地方使用redirect_to root_path。假设你有一个 public/index.html,那就行了!
  • 我没有使用 Rails。有没有办法在没有轨道的情况下做到这一点?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-12-13
  • 1970-01-01
  • 1970-01-01
  • 2015-09-08
  • 2011-07-08
  • 2013-08-22
相关资源
最近更新 更多