Por el momento, dejando la cuestión del marco CGI vs MVC, lo que va a querer es uno de los módulos de plantillas de salida del CPAN.
El Template Toolkit es muy popular (Template.pm en CPAN) También son populares Text :: Template, HTML :: Template y HTML :: Mason.
HTML :: Mason es mucho más que un módulo de plantilla, y como tal podría ser demasiado pesado para una simple aplicación CGI, pero vale la pena investigarlo un poco para decidir cuál sería el mejor para usted.
Texto :: La plantilla es razonablemente simple y usa Perl dentro de las plantillas, por lo que puede recorrer los datos y realizar la lógica de visualización en Perl. Esto es visto como un pro y un engaño por las personas.
HTML :: La plantilla también es pequeña y simple. Implementa su propio pequeño conjunto de etiquetas para procesamiento if/then/else, configuración de variables y bucles. Eso es. Esto se ve como pro y como contra por las razones exactamente opuestas a Text :: Template.
Template toolkit (TT) implementa un lenguaje de plantillas muy grande y perlish que incluye bucles y lógica, y mucho más.
Usé HTML :: Plantilla uno, y encontré que quería algunas características más. Luego utilicé Text :: Template con éxito, pero encontré su deseo de juguetear con los espacios de nombres para ser un poco molesto. Conozco y amo a Template Toolkit. Para mí, se siente bien. Su millaje puede variar.
Por supuesto, todavía existe el antiguo método de "impresión HTML", a veces basta con un par de instrucciones de impresión. Pero has llegado a la idea de separar tu pantalla de tu lógica principal. Lo que es algo bueno.
Es el primer paso en el camino hacia Modelo/Vista/Controlador (MVC) en el que mantiene separada su lógica de negocio del modelo de datos & (su código acepta la entrada, hace algo con ella y decide qué debe ser salida), su entrada/salida (Plantillas o instrucciones de impresión - HTML, PDF, etc.) y el código que conecta las dos (CGI, CGI :: Aplicación, Catalyst MVC Framework, etc.). La idea es que un cambio en su estructura de datos (en el Modelo) no debería requerir cambios en sus rutinas de salida (Vista).
Gracias! Los probaré y aceptaré tu respuesta cuando tenga tiempo de probarlos (debería ser la próxima semana, me voy de vacaciones :-)) – ristonj
Me pregunto si Jifty sigue siendo una buena opción. ¿Se mantiene? Observo que se está eliminando de Debian por no ser ampliamente utilizado. La última actualización de Jifty para el CPAN fue en 2011. – jeremiah
Sí, Jifty probablemente debería ser eliminado de esa lista. Pero otros definitivamente se han levantado para tomar su lugar. Ahora agregaría Dancer y Mojolicious a esa lista. – mpeters