在 rails erb 中使用变量

using variables in rails erb

我来自 .net c# razor 背景,所以我想知道如何在 rails .erb 视图中执行以下操作。

剃须刀:

@{var i = 0}
<table>
     <tr><th>name</th></tr>
     @foreach item in collection{
        <tr>
             <td>@i++.@item.name</td>
        </tr>
     }
</table>

我想要一种在视图中使用迭代变量的方法。 rails erb 文件是否具有执行此操作的能力?我可以在哪里创建视图中的变量并与之交互?

提前致谢。

文档几乎回答了这个问题:https://apidock.com/ruby/ERB

虽然我不会那样做,而是:

<table>
  <tr><th>name</th></tr>

  <% collection.each_with_index do |item, i| %>
    <tr>
      <td>
        <%= i %>. <%= item %>
      </td>
    </tr>
  <% end %>
</table>

要回答您的特定但非规范的Ruby问题,确定:

<% i = 0 %>
<table>
  <% collection.each do |item| %>
    <!-- Etc -->
    <%= i += 1 %>

(我不清楚你是想要基于零还是基于一的索引;根据需要调整所有示例。)