2011-04-17 14 views
7

Tengo varios parciales que incluyo en mis Rails application.html.erb file, pero el HTML resultante no conserva mi sangría (formateo). Me han dicho que la primera línea se renderiza con el mismo nivel de sangría que la llamada al _partial.html.erb, pero todas las líneas posteriores en el parcial simplemente se alinean a la izquierda.¿Puede hacer que ERB sandee correctamente cuando se procesa?

Esto se traduce en un código como (ver mis comentarios para posicionamiento):

<body> 
    <div id="outer"> 

     <div class="contentwidth main"> 
      <div class="logo"> <<<<< Shouldn't be this far to the right 
    <h1><a href="index.html">minimal.</a></h1> 
</div><!-- end logo -->  <<<<<<< Shouldn't be way over to the left 

¿Hay alguna manera de solucionar este/formatear mis parciales comprendidos mejor uso de ERB? ¿O necesito usar HAML?

+3

¿Por qué te importa? HTML es para consumo de máquina, no para consumo humano. –

+0

Me molesta y las etiquetas anidadas correctamente se ven mucho mejor desde la perspectiva de una organización (es más fácil ver dónde comienza y termina el contenido). –

+12

Los seres humanos tienen que consumir cosas destinadas a las máquinas al realizar la depuración. –

Respuesta

2

El doc on filters contiene un ejemplo del uso de un filtro posterior para comprimir el html antes de enviarlo al navegador.

Haciendo algo similar, pero usando algo como Tidy para reformatear y reemplazar el html donde este ejemplo hace una compresa podría hacer el truco.

+0

Genial, lo comprobaré. Gracias. –

3

No es la respuesta que desea, pero - no, no hay nada integrado en los raíles para el autoengrase ERB.

+1

Lamentablemente, este parece ser el caso. He cambiado a HAML y estoy amando todo. –

+2

Sí, definitivamente vale la pena cambiar a haml. – smathy

Cuestiones relacionadas