Ruby on Rails 获取 URL 并在 if 语句中使用它

Ruby on Rails get URL and use it within an if statement

我在 rails 应用程序上有一个 ruby,我想根据 URL 是什么在索引页上显示图像。如果 url 是:localhost:3000/products/multi_find 我不想显示图像,如果是其他任何东西我希望显示它。

他们是我检索 url 并将其存储在变量中以 运行 和 <& if statement like: if url != localhost:3000/products/multi_find &><%= image tag "test.png", :size => "15x18" %> <% end %>

的一种方式吗

提前致谢。

在 Rails 中,您必须考虑路由规则,而不是 URL。 URL 只不过是路由指令的结果。

因此,/products/multi_find可以用actioncontroller和参数来表示

考虑到这一点,您可以使用 current_page? 助手来检查当前 URL 是否与您期望的路线匹配,如果匹配则忽略该图像。

您甚至可以使用 rails "action_name" 和 "controller_name" 辅助方法来完成工作。

试试这个:

<% unless current_page?('/products/multi_find') %>
  <%= image tag "test.png", :size => "15x18" %>
<% end %>

None 这些解决方案有效,这个:

<% if request.original_url == 'http://localhost:3000/products/multi_find' %>
    <%= image tag "test.png", :size => "15x18" %>
<% end %>