Ruby on rails 在Rails中的分部中条件渲染的正确方式?

Ruby on rails 在Rails中的分部中条件渲染的正确方式?,ruby-on-rails,ruby,Ruby On Rails,Ruby,我已经为一个行项目创建了一个分部,在我的例子中,它发出一个带有两个的。这个很好用 我想做的是,在不同的地方使用相同的分部。原始视图有足够的空间,因此显示每个单元格是可以的。但另一个(侧边栏)的空间要小得多,我只想显示5个单元格中的两个 那么,问题是,正确的实施方式是什么?除非另有规定,否则我希望“完整”版本为默认版本,并且仅在传递参数时使用受限版本 目前,我可能会使用将局部变量传递给partial的功能,并检查是否定义了参数limited,如果定义了,则跳过最后N个单元格。我在正确的轨道上吗?如

我已经为一个
行项目创建了一个分部,在我的例子中,它发出一个带有两个
。这个很好用

我想做的是,在不同的地方使用相同的分部。原始视图有足够的空间,因此显示每个单元格是可以的。但另一个(侧边栏)的空间要小得多,我只想显示5个单元格中的两个

那么,问题是,正确的实施方式是什么?除非另有规定,否则我希望“完整”版本为默认版本,并且仅在传递参数时使用受限版本

目前,我可能会使用将局部变量传递给partial的功能,并检查是否定义了参数
limited
,如果定义了,则跳过最后N个单元格。我在正确的轨道上吗?如果是,我应该使用什么样的变量(我可以使用符号吗)

当前的_line_item.html.erb(我有点不满意)


&时代;

编辑:添加了当前版本。

是的,您的思路正确。你可以这样做

<%= render 'partial_name', limited: true %>

然后在部分:

<% limited ||= false %> # More explicit as to what default value is
<tr>
  <td><%= line_item.quantity %>&times;</td>
  <td><%= line_item.product.title %></td>
  <td class="item_price"><%= number_to_currency(line_item.total_price, unit: '€') %></td>
  <% unless limited %>
    <td class="remove_item"><%= button_to 'Remove', line_item, method: :delete %></td>
  <% end %>
</tr>
#更明确地说明默认值是什么
&时代;

您能为您所做的添加一些代码以便我们复制粘贴吗?我发现从头开始制作一个示例非常耗费精力。:)当然,就是这样:)啊,当然,我有点想知道如何指定默认参数——这很有意义。谢谢没问题,很高兴我能帮忙:)
<% limited ||= false %> # More explicit as to what default value is
<tr>
  <td><%= line_item.quantity %>&times;</td>
  <td><%= line_item.product.title %></td>
  <td class="item_price"><%= number_to_currency(line_item.total_price, unit: '€') %></td>
  <% unless limited %>
    <td class="remove_item"><%= button_to 'Remove', line_item, method: :delete %></td>
  <% end %>
</tr>