不存在的行的Ruby语法错误

时间:2014-10-23 20:04:24

标签: ruby-on-rails ruby syntax-error

我得到了41: syntax error, unexpected keyword_ensure, expecting keyword_end。我也有第43行的错误。

捕获?我的代码在第40行停止,我在Sublime文本中没有看到任何额外的空格或标签......什么给出了?

<div class="panel panel-default">

  <div class="panel-heading">
    <div class="panel-title">
      <h1>Listing reports</h1>
    </div>
  </div>

      <div class="panel-body">
            <table>
              <thead>
                <tr>
                  <th>Summoner Name</th>
                  <th>User</th>
                  <th></th>
                  <th></th>
                  <th></th>
                </tr>
              </thead>
              <tbody>
                <% @reports.each do |report| %>
                  <tr>
                    <td><%= report.description %></td>
                    <td><%= report.user.email if report.user %></td>
                    <td><%= link_to 'Show', report %></td>
                    <% if report.user == current_user %>
                      <td><%= link_to 'Edit', edit_report_path(report) %></td>
                      <td><%= link_to 'Destroy', report, method: :delete, data: { confirm: 'Are you sure?' } %></td>
                    </tr>
                    <% end %>
              </tbody>
            </table>

            <br>
            <% if user_signed_in? %>
              <%= link_to 'New Report', new_report_path %>
            <% end %>
      </div>

</div> 

1 个答案:

答案 0 :(得分:0)

这不是Ruby文件。它看起来像是一些模板语言,可能是ERb。显然,Ruby不理解ERb,Ruby只理解Ruby。因此,首先需要将文件转换为Ruby,并且无法保证此转换后的文件与原始模板文件具有完全相同的行号。