【Rails】syntax error, unexpected keyword_ensure, expecting keyword_endのエラー解消法

エラー内容

今回私が遭遇したエラーは、railsの開発をする際、html.erbでdo..endのブロックを記述したところで発生しました。

<% if ............... %>
  <div>..........</div>
<% else %>
  <div>
    <div>
      <div>
        <%= ........ do %>
          <div>
            <%= ........... %>
            <%= .............. do %>
            <% end %>
          </div>
        <% end %>
      </div>
      <% if .................. %>
        <div>
          <%= ............... %>
        </div>
      <% end %>
    </div>
  </div>

こんな感じでerbのファイルを記述していたのですが、以下のような文法エラーが出ました。

syntax error, unexpected keyword_ensure, expecting keyword_end
...........省略

解決

原因はシンプルで、最後に<% end %>が抜けていることでした。。

<% if ............... %>
  <div>..........</div>
<% else %>
  <div>
    <div>
      <div>
        <%= ........ do %>
          <div>
            <%= ........... %>
            <%= .............. do %>
            <% end %>
          </div>
        <% end %>
      </div>
      <% if .................. %>
        <div>
          <%= ............... %>
        </div>
      <% end %>
    </div>
  </div>
<% end %> #追記

他にも、doが抜けていたりと、erbを記述する際は書いたかわからなくなることがあるので注意しましょう。

タイトルとURLをコピーしました