尝试从 Rails 中的 URL 参数显示 DIV

Posted

技术标签:

【中文标题】尝试从 Rails 中的 URL 参数显示 DIV【英文标题】:Trying to display DIV from URL parameters in Rails 【发布时间】:2012-04-25 00:53:49 【问题描述】:

在 Rails 3 中,我有一个想要访问的 URL (http://localhost.com/display_div_a_and_hide_div_b),我希望它隐藏和显示相应的 div。

我的路线文件中有以下内容:

get 'users/display_div_a_and_hide_div_b' => 'controller#display_div_a_and_hide_div_b'

但是我不知道在特定的控制器操作中添加什么来显示和隐藏这些 div。我使用的是 UJS 而不是原型,所以无法使用 render :update 方法。

非常感谢任何帮助。

【问题讨论】:

【参考方案1】:

是否有某些原因需要对 url 中的所有内容进行编码?难道你不能只是有一个动作controller#display,然后有关于参数中发送的选项的信息吗?例如,您的视图可能如下所示:

<% unless params[:div_a] == "hidden" %>
  <div id="div_a">
    ...
  </div>
<% end %>

<% unless params[:div_b] == "hidden" %>
  <div id="div_b">
    ...
  </div>
<% end %>

那么你所要做的就是发送参数来隐藏或显示你想要的任何部分。

【讨论】:

抱歉,用户不是从 Rail 应用程序内部访问 URL。他们是从外面来的,所以我不能通过参数传递它。它必须通过 URL 字符串本身。 你知道你可以通过 URL 字符串传递参数,对吧? users/display?div_a=hidden&amp;div_b=shown 谢谢。这就是解决方案。我没有意识到您可以通过 URL 将参数传递给 rails!

以上是关于尝试从 Rails 中的 URL 参数显示 DIV的主要内容,如果未能解决你的问题,请参考以下文章

如何将参数添加到rails中的url?

尝试在 ruby​​ on rails 中创建嵌套资源时,“表单中的第一个参数不能包含 nil 或为空”

Rails 识别未知的 url 参数

Rails:将所有未知路由重定向到 root_url

如何使用 url 参数显示/隐藏 id 与参数名称匹配的 div

URL 中的 Rails slugs - 使用 Active Record 模型帖子的 Title 属性而不是 ID