第一篇关于StackOverflow的文章。:)我是Ruby on Rails的新手(一般来说也是编码新手),我最难理解的是文档。所以我确信这个答案就在某个地方,但如果是的话,我没有找到/理解它。
我试图创造两种选择:
1.* * 登录前单击徽标-转到root_path**
1.* * 登录后单击徽标-转到alerts_path**
下面的解决方案是可行的,但是必须有一种更好、更整洁、更简洁的方法来编写它,而不是重复所有的代码。
<% if user_signed_in? %>
<%= link_to alerts_path, class: "d-flex flex-row navbar-brand", input_html: {data: {bs_toggle: "offcanvas", bs_target: "#offcanvas"}} do %>
<%= cl_image_tag("ouicity_logo_j5rhro") %>
<h2 id="logo" class="ms-3">ouicity</h2>
<% end %>
<% else %>
<%= link_to root_path, class: "d-flex flex-row navbar-brand", input_html: {data: {bs_toggle: "offcanvas", bs_target: "#offcanvas"}} do %>
<%= cl_image_tag("ouicity_logo_j5rhro") %>
<h2 id="logo" class="ms-3">ouicity</h2>
<% end %>
<% end %>
1条答案
按热度按时间1szpjjfi1#
一个可能的简单重构(DRY代码)就是为url更改添加逻辑(使用三元运算符):
您最终可以将此逻辑提取到一个帮助器中,以使视图更简单:
x一个一个一个一个x一个一个二个x