我想将其他if语句组合成1行 我的下面的代码显示部分但仅当前URL不是elsif语句中列出的3之一
<% if request.path == landing_path then %>
<% elsif request.path == new_company_path then %>
<% elsif request.path == edit_user_path(current_user.id) then %>
<% else %>
<%= render 'dashboard/user_controls'%>
<% end %>
我正在尝试
<% if request.path != (landing_path || new_company_path || edit_user_path(current_user.id) ) then %>
<%= render 'dashboard/user_controls'%>
<% end %>
我做错了什么?
由于
答案 0 :(得分:2)
这将有效:
<%= render 'dashboard/user_controls' if [landing_path, new_company_path, edit_user_path(current_user)].all? {|path| request.path != path } )%>
但你宁愿在帮手中抽象出来。