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
可以用action
、controller
和参数来表示
考虑到这一点,您可以使用 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 %>
我在 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
可以用action
、controller
和参数来表示
考虑到这一点,您可以使用 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 %>