Content_tag_for rails 3.2中的故障

时间:2013-07-19 18:33:05

标签: ruby-on-rails ruby-on-rails-3 for-loop tags

我有搜索结果需要循环播放。每个循环应该给我两个表行。到目前为止的代码是:

<tbody>
  <%= content_tag_for(:tr, @results) do |material| %>
     <tr>
       <td>Some content</td>
       <td>Some content</td>
       <td>Some content</td>
     </tr>
     <tr class="hide">
       <td>Some content</td>
       <td>Some content</td>
       <td>Some content</td>
     </tr>
   <% end %>
 </tbody>

问题是我在一个单独的行中得到了一个类和id在两行之上。我需要用id包装这两行。

e.g。

<tr class="X" id="X"></tr>
<tr>
  <td>Some content</td>
  <td>Some content</td>
  <td>Some content</td>
</tr>
<tr class="hide">
  <td>Some content</td>
  <td>Some content</td>
  <td>Some content</td>
</tr>

当我尝试使用div_for时,我也有同样的问题。在这种情况下,我得到的div都是在行之前堆叠的id。

我做错了什么?

1 个答案:

答案 0 :(得分:0)

问题在于你无法使用此方法将a包装在另一个中。解决方案是写下以下内容:

<tbody>
  <%= content_tag_for(:tr, @results) do |material| %>
    <td>Some content</td>
    <td>Some content</td>
    <td>Some content</td>

    <tr class="hide">
      <td>Some content</td>
      <td>Some content</td>
      <td>Some content</td>
    </tr>
 <% end %>
</tbody>

前三名用一个id包裹,而另一个只是逐字翻译。