仅在特定页面的轨道中打印行

时间:2014-05-02 10:43:33

标签: ruby-on-rails

我是rails的新手,有以下问题:

我有一个视图,从多个页面的布局呈现,它实际上是标题的一部分。我想从标题中删除特定行并仅将其隐藏一页。我试图在视图中添加一个条件来检查呈现的页面是否来自特定的控制器/操作,但它不起作用。这种情况的最佳做法是什么?

感谢

3 个答案:

答案 0 :(得分:0)

' ave问了一个非常相似的question,你已经有了一个好方法: 使用像

这样的条件
<% if current_page?(view_path)==false %>
 <your line>foobar</your line>
<%end%>

答案 1 :(得分:0)

只需在控制器操作中保留一个实例变量,并设置为true。使用此变量可以包含/排除特定代码。

控制器动作

@include = true

视图

if @include.present?
  //place the line which should be excluded
end

答案 2 :(得分:0)

在视图中,您可以从params [:controller]访问控制器,这样您就可以

<% if params[:controller] == foo %>
  <p>conditionally shown</p>
<% end %>

尽管在...中直接使用params并不总是最好的做法...