Le code suivant:Sur Ruby on Rails, <% = ou <% ne devrait avoir d'importance que si c'est show ou no show, mais pourquoi donnera-t-il une erreur de compilation?
<div id="vote_form">
<%= form_remote_tag :url => story_votes_path(@story) do %>
<%= submit_tag 'shove it' %>
<% end %>
</div>
donne erreur de compilation
alors que si le premier <%=
est remplacé par <%
, alors tout fonctionne. Je pensais qu'ils ne diffèrent que par "montrer" ou "ne pas montrer", mais pourquoi cela provoquera-t-il réellement une erreur de compilation?
L'erreur est:
> SyntaxError in Stories#show
>
> Showing
> app/views/stories/show.html.erb where
> line #17 raised:
>
> compile error C:/Software
> Projects/ror/shov12/app/views/stories/show.html.erb:17:
> syntax error, unexpected ')' ...
> story_votes_path(@story) do).to_s);
> @output_buffer.concat ...
> ^C:/Software
> Projects/ror/shov12/app/views/stories/show.html.erb:23:
> syntax error, unexpected kENSURE,
> expecting ')' C:/Software
> Projects/ror/shov12/app/views/stories/show.html.erb:25:
> syntax error, unexpected kEND,
> expecting ')'