2010-10-19 27 views
9

Como me molestaba con las etiquetas HTML, comencé a convertir mi proyecto a HAML, ya que está mucho mejor estructurado. Me complace que la instalación proporcione la herramienta html2haml para ayudarme con esto.Falta la palabra clave_end en el procesamiento de la plantilla parcial de haml

Si bien es sintácticamente correcto, me procesar el archivo da un error raro que no lo entiendo muy bien:

/stories/_story.html.haml:28: syntax error, unexpected keyword_ensure, expecting keyword_end 
...:Util.html_safe(_erbout);ensure;@haml_buffer = @haml_buffer.... 
...        ^
/stories/_story.html.haml:31: syntax error, unexpected $end, expecting keyword_end 

Mi fuente haml sólo tiene 27 líneas, y ya que soy muy nuevo en esto, no tengo ni idea de dónde se ha ido mal ... aquí está el código:

%h1= story.title 
%center 
    %i 
    by #{link_to story.user.name, story.user} 
#story-short= story.short_desc 
- if logged_in? and @current_user.id == story.user_id 
    .list-buttons 
    %center 
     = link_to 'Edit', edit_story_path(story) 
     | 
     \#{link_to 'Delete', story, :method => 'delete', :confirm => 'Are you really sure?'} 
#story-body 
    - story.body.split("\n").each do |line| 
    - if line.strip.empty? 
    %hr/ 
    - else 
    %p= line.strip 
#comments 
    %p{:onclick => "$('#comments').find('dl').slideToggle();"} Comments to this story (click to expand) 
    %dl 
    = render :partial => 'comment', :collection => @story.comments 
    - if logged_in? and @current_user.id != story.user_id 
     %dt Leave a comment: 
     %dd 
     = form_for [story, story.comments.build] do |f| 
      .field= f.text_area :body 
      .actions= f.submit "Comment!" 

Así que sí, me encantaría saber dónde esto está mal. Lo revisé varias veces, ¿quizás un error?

Gracias por su tiempo.

Respuesta

9

Las líneas debajo de - story.body.split("\n").each do |line| no tienen sangría. Esto significa que Haml no sabe agregar automáticamente un end para el bloque, que está causando el error en cuestión.

+1

¿Un error en html2haml, quizás? ¡Gracias de cualquier manera! –

+0

Estoy interesado en solucionarlo si se trata de un error html2haml. ¿Puedes proporcionar el ERB original que se convirtió en este Haml? –

Cuestiones relacionadas