Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
向ruby==运算符传递多个参数的正确方法是什么?_Ruby - Fatal编程技术网

向ruby==运算符传递多个参数的正确方法是什么?

向ruby==运算符传递多个参数的正确方法是什么?,ruby,Ruby,我是一个试图这样做的傻瓜: <% if @page[:title] == "Portraits" %> <%= render :partial => "/shared/slideshow" %> <% elsif @page[:title] == "Escapes" %> <%= render :partial => "/shared/slideshow" %> <%

我是一个试图这样做的傻瓜:

    <% if @page[:title] == "Portraits" %>
        <%= render :partial => "/shared/slideshow"  %>  
    <% elsif @page[:title] == "Escapes" %>
        <%= render :partial => "/shared/slideshow"  %>
    <% elsif @page[:title] == "Articulos pa Web" %>
        <%= render :partial => "/shared/slideshow"  %>
    <% end %>

“/共享/幻灯片放映”%>
“/共享/幻灯片放映”%>
“/共享/幻灯片放映”%>

必须有一种简洁的方法来做到这一点,但我就是想不出来。

避免将当前的逻辑放在视图中

将其放在助手方法中,并在视图中使用它:

def get_partial_to_render
  if ["Portraits","Escapes","Articulos pa Web"].include? @page[:title]
    "shared/slideshow"
  else
    "some_other_template"
  end
end
#Note that the partial should not have a leading `/` in the path to it.
在你看来:

<%= render :partial => get_partial_to_render  %>  
get\u partial\u to\u render%>

或者,如果名称不在数组中,则不希望渲染分部:

def render_my_partial?
  ["Portraits","Escapes","Articulos pa Web"].include? @page[:title]
end

<%= render :partial => "shared/slideshow" if render_my_partial? %>  
def render_my_partial?
[“肖像”、“逃脱”、“Articulos pa Web”]。包括@第[:标题]
结束
“共享/幻灯片放映”如果呈现我的部分?%>

请注意,
是方法名称的一部分。鲁比不是很棒吗D

避免将当前的逻辑放在视图中

<% if ["Portraits", "Escapes", "Articulos pa Web"].include?(@page[:title])  %>
    <%= render :partial => "/shared/slideshow"  %>
<% end %>
将其放在助手方法中,并在视图中使用它:

def get_partial_to_render
  if ["Portraits","Escapes","Articulos pa Web"].include? @page[:title]
    "shared/slideshow"
  else
    "some_other_template"
  end
end
#Note that the partial should not have a leading `/` in the path to it.
在你看来:

<%= render :partial => get_partial_to_render  %>  
get\u partial\u to\u render%>

或者,如果名称不在数组中,则不希望渲染分部:

def render_my_partial?
  ["Portraits","Escapes","Articulos pa Web"].include? @page[:title]
end

<%= render :partial => "shared/slideshow" if render_my_partial? %>  
def render_my_partial?
[“肖像”、“逃脱”、“Articulos pa Web”]。包括@第[:标题]
结束
“共享/幻灯片放映”如果呈现我的部分?%>
请注意,
是方法名称的一部分。鲁比不是很棒吗D


<% if ["Portraits", "Escapes", "Articulos pa Web"].include?(@page[:title])  %>
    <%= render :partial => "/shared/slideshow"  %>
<% end %>
“/共享/幻灯片放映”%>

“/共享/幻灯片放映”%>

是的,但是您应该尽可能避免在视图中放置此类逻辑。是的,但是您应该尽可能避免在视图中放置此类逻辑。谢谢,我没有意识到我忽略了这一点。完全是无意的。谢谢,我没意识到我忽略了这件事。这完全是无意的。