Contenido del curso
Entorno de desarollo
Nuestra primera aplicación
- 6

Arquitectura MVC y Flujo de Peticiones en Rails
07:22 min - 7

Creación y Configuración de Aplicaciones Web con Ruby on Rails
11:17 min - 8

Creación de Rutas y Controladores en Ruby on Rails
10:15 min - 9

Creación de Modelos y Migraciones en Ruby on Rails
13:12 min - 10

Gestión de Credenciales Seguras en Ruby on Rails
11:57 min - 11

Gestión de Assets y Layouts en Rails: Asset Pipeline y Webpacker
12:30 min - 12

Uso del Generador Scaffold en Ruby on Rails
10:50 min - 13

Migraciones y Consistencia de Modelos en Rails
05:57 min - 14

Migración de Plantillas ERB a Haml en Ruby on Rails
Viendo ahora - 15

Creación de Formularios Dinámicos con SimpleForm y Haml en Rails
12:19 min - 16

Internacionalización de Aplicaciones Rails con i18n y i18n-tasks
09:29 min - 17

Debugging en Ruby on Rails: Uso de Bybug y Pry
09:03 min
Proyecto del curso: primeros pasos
- 18

Desarrollo de un Sistema de Gestión de Tareas con Ruby on Rails
05:35 min - 19

Diseño de Modelos de Datos para un Organizador de Tareas
05:45 min - 20

Creación de Scaffolds y Modelos en Rails con SimpleFrame y Bootstrap
10:08 min - 21

Internacionalización de Formularios en Rails con i18n y SimpleForm
11:03 min - 22

Validaciones de Modelos en Ruby on Rails
10:42 min
Proyecto del curso: usuarios
- 23

Autenticación de Usuarios con Devise en Rails
11:42 min - 24

Migración de Llave Foránea: Enlazar Tarea con Usuario en Rails
05:46 min - 25

Integración Visual y Estructural en Rails: Usuario, Tarea y Participante
09:53 min - 26

Manejo de Formularios Anidados con Cocoon en Rails
12:25 min - 27

Formularios Dinámicos en Rails con Cocoon y Validaciones de Unicidad
09:36 min - 28

Permisos y Accesos con KanKan en Aplicaciones Rails
14:13 min
Proyecto del curso: interacciones
- 29

Callbacks en Controladores y Modelos en Rails
08:58 min - 30

Automatización de Inserción de Datos en Rails con db:seed
07:38 min - 31

Envío de Correos con ActionMailer en Rails
13:25 min - 32

Creación de notas dinámicas en tareas con Ruby on Rails
17:08 min - 33

Inserciones Dinámicas de Notas con AJAX y SJR en Rails
09:12 min - 34

Mejora de Interfaces con Bootstrap en Aplicaciones Rails
16:19 min
Cierre
Migración de Plantillas ERB a Haml en Ruby on Rails
Resumen
Escribir vistas en Ruby on Rails puede ser mucho más ágil si dejas atrás el sistema de plantillas tradicional y adoptas una alternativa diseñada para mejorar la legibilidad y la velocidad de escritura. Esa alternativa se llama Haml, y en esta guía aprenderás cómo instalarlo, configurarlo y hacer tu primera migración desde ERB sin romper nada en el camino.
¿Qué es Haml y por qué reemplaza a ERB?
Haml es un sistema de plantillas diseñado específicamente para HTML que elimina gran parte de la sintaxis repetitiva que caracteriza a ERB [0:41]. ERB, el motor de plantillas por defecto en Rails, permite insertar código Ruby dentro de las vistas mediante etiquetas especiales con corchetes triangulares (<%= %>). Funciona bien, pero a medida que las vistas crecen, el código se vuelve difícil de leer.
Con Haml la situación cambia radicalmente:
- No necesitas cerrar etiquetas HTML manualmente.
- La indentación define la estructura del documento.
- Para mostrar variables de Ruby basta con usar el signo
=sin corchetes triangulares [7:30].
Es importante destacar que el uso de Haml es completamente opcional [2:15]. Puedes probarlo y decidir si se adapta a tu flujo de trabajo o si prefieres continuar con ERB.
¿Cómo instalar Haml en un proyecto Rails?
La instalación se realiza a través de dos gemas que trabajan en conjunto. La primera es Hamlit, una versión optimizada de Haml que resuelve preocupaciones de rendimiento al minificar la arquitectura de renderización y consumir menos recursos [4:10]. La segunda es Hamlit Rails, que actúa como puente de conexión entre Hamlit y el framework Rails [5:32].
¿Dónde agregar las gemas en el Gemfile?
Abre el archivo Gemfile de tu proyecto y añade las siguientes líneas dentro del grupo development [5:48]:
ruby gem 'hamlit' gem 'hamlit-rails'
Una vez guardados los cambios, ejecuta el comando de instalación en la consola [6:10]:
bash bundle install
Este comando reconocerá las librerías nuevas y las adjuntará al proyecto. En la salida verás líneas en verde con el texto installing que confirman la instalación exitosa.
¿Es necesario reiniciar el servidor?
Sí. Después de instalar las gemas, debes detener el servidor con Ctrl + C y volver a iniciarlo con rails server [6:40]. Este paso es indispensable para que Rails cargue las nuevas dependencias.
¿Cómo migrar una vista de ERB a Haml?
El proceso de migración es sorprendentemente sencillo. Tomemos como ejemplo una vista llamada hello.html.erb ubicada en el directorio app/views/welcome/ [7:00]. Esta vista utilizaba dos variables de instancia: una proveniente del controlador y otra extraída directamente de las credenciales de Rails.
Los pasos para migrar son:
- Cambiar la extensión del archivo de
.erba.hamlusando la teclaF2en el editor [7:18]. - Eliminar los corchetes triangulares (
<%= %>) que envolvían las expresiones Ruby. - Reemplazarlos por el signo
=seguido de la variable.
El resultado es un archivo más limpio donde el código Ruby interactúa con las vistas de forma directa. Al verificar en el navegador accediendo al path /hola, el comportamiento permanece idéntico al que tenías con ERB [8:00]. No hay cambios visibles para el usuario final, lo que confirma que la migración fue exitosa.
Este concepto de transformación es similar al que se aplica en el procesamiento de assets [3:38]: Haml se convierte a HTML antes de llegar al cliente, igual que otros preprocesadores transforman su sintaxis al formato final que el navegador entiende.
Si ya conoces HTML, la transición será natural. Y si no lo dominas del todo, Haml te facilitará el trabajo al reducir la cantidad de etiquetas y cierres que necesitas escribir [1:55]. Comparte en los comentarios cómo ha sido tu experiencia con la migración y si planeas adoptar Haml en tus próximos proyectos.