我有两种布局 - application.html.erb 和 application.pdf.erb 它们都呈现相同的部分发票/ show.html.erb
发票/ show.html.erb 有一张表,其中一部分如下所示:
<tr>
<td><%= in.name%></td>
<td><%= link_to 'remove', some_path(in), method: :delete%></td>
</tr>
这工作正常,但我想在渲染 application.pdf.erb 布局时删除link_to。所以它看起来像这样:
<tr>
<td><%= in.name%></td>
<td></td>
</tr>
我尝试使用content_for / yield来实现,但我无法使用它。
有关如何实现这一目标的任何建议吗?
答案 0 :(得分:1)
您实际上可以获得部分格式:
<tr>
<td><%= in.name%></td>
<% if controller.request.format == "html" %>
<td><%= link_to 'remove', some_path(in), method: :delete%></td>
<% end %>
</tr>