• Publicidad

El mejor Framework Web para Perl

Todo lo relacionado con el desarrollo Web con Perl: desde CGI hasta Mojolicious

El mejor Framework Web para Perl

Notapor HIRONAKAMURA » 2014-01-03 16:14 @718

Avatar de Usuario
HIRONAKAMURA
Perlero nuevo
Perlero nuevo
 
Mensajes: 20
Registrado: 2013-04-23 15:19 @680
Ubicación: México

Publicidad

Re: El mejor Framework Web para Perl

Notapor explorer » 2014-01-03 16:42 @737

Bueno... es algo subjetivo...

A mí el que más me gusta es el Mojolicious, pero porque tiene muchas más cosas que no solo para hacer web. De hecho, es el que me planteo aprender seriamente en los próximos días.

La verdad, es que hablo desde la ignorancia: no he probado todos. Ni la mitad de la mitad de la mitad ;)

P.D.: Hay muchos más entornos de trabajo web, para Perl. Por ejemplo, Titanium, basado en CGI::Application (otro entorno de trabajo Web). Entra en CPAN y busca por "framework web", y asómbrate.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14476
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: El mejor Framework Web para Perl

Notapor HIRONAKAMURA » 2014-01-03 17:48 @783

Gracias por responder.
Avatar de Usuario
HIRONAKAMURA
Perlero nuevo
Perlero nuevo
 
Mensajes: 20
Registrado: 2013-04-23 15:19 @680
Ubicación: México

Re: El mejor Framework Web para Perl

Notapor danimera » 2014-01-04 18:53 @828

CGI-Application http://www.cgi-app.org, de por si es el más rápido, flexible y fácil, y además ayudo a muchas personas que lo están usando, y lo conozco bien... Mojo es otro... pero me gusta más Dancer: es moderno y tiene muchas cosas interesantes pero fue muy complicado para mi empezarlo a manejar, entonces solo lo he dejado ahí de práctica hasta instalarlo y portarlo. NO, no, NO... ¡qué dolor para mi...!

Así que si no vas por CGI-Application o Titanium, de una vez pásate a Catalyst, por favor...
100% Telch - Perl Web Programming
Cali PerlMongers: http://cali.pm.org
Avatar de Usuario
danimera
Perlero frecuente
Perlero frecuente
 
Mensajes: 871
Registrado: 2005-06-23 19:02 @834
Ubicación: Colombia

Re: El mejor Framework Web para Perl

Notapor explorer » 2014-01-04 22:40 @986

preiddy estaba escribiendo un tutorial de Catalyst, en este mismo subforo (lo ha tenido que aparcar por problemas personales).

Yo me comprometo a hacer uno de Mojolicious, este año :)

¿Te animas a hacer uno de C::A?

Yo he hecho dos aplicaciones con C::A y, al final, me salé que he tenido que escribir mucho código. Aunque en el segundo usé algunos complementos de C::A, aún así tuve que escribir muchas líneas burocráticas para intercambiar información entre subrutinas, o decodificar todos los parámetros que llegan en utf8, o la complicación para generar salida del HTML en utf8 (tener que poner utf8::encode() en cgiapp_postrun() me parece una chapuza, pero no encontré otra forma), o poner un listado en el código de los contenidos estáticos para exceptuarlos de los dinámicos (esto es, seguro, culpa mía).

En fin... es lo que pasa con los entornos de trabajo: hasta que no llegas a hacerte con los procedimientos y nomenclatura, vas dando palos de ciego, hasta que funciona (o crees que funciona).

use CGI::Application::Plugin::AutoRunmode;
use CGI::Application::Plugin::Session;
use CGI::Application::Plugin::Forward;
use CGI::Application::Plugin::Redirect;
use CGI::Application::Plugin::DBH (qw/dbh_config dbh/);

O, por ejemplo, el archivo index.cgi, que es el wrapper de toda la aplicación, aunque uso algo tan cómodo como

use CGI::Application::Dispatch;

tengo que poner una línea de excepción como esta:

# mod_rewrite alters the PATH_INFO by turning it into a file system path, so we repair it.
# necesitamos esto para que las funciones url() nos den un resultado correcto
$ENV{PATH_INFO} =~ s/^$ENV{DOCUMENT_ROOT}// if defined $ENV{PATH_INFO};

O, también, por ejemplo, toda la confusión que rodea a CGI::Session (o CGI::Application::Plugin::Session), que nunca estás seguro de si has usado el procedimiento correcto para crear o leer la sesión.

Quiero decir que, si sigues la documentación de CGI::Session, y analizas con detalle lo que sucede, te das cuenta de que se crean dos registros de sesión, en lugar de uno solo.

Al final, resulta que todo se reduce a un "simple"

# configuración de la sesión de usuario
$self->session_config(
CGI_SESSION_OPTIONS => [ 'driver:File', $query, {Directory => "$DIRECTORIO_WEB/sesiones"} ],
DEFAULT_EXPIRY => '+90d',
COOKIE_PARAMS => { -expires => '+90d' },
SEND_COOKIE => 1,
);

$session = $self->session;

excepto... si la aplicación se ha llamado con la confirmación de registro de un usuario, que hay que poner una excepción porque, claramente, no existe objeto CGI::Session para un usuario que todavía no está registrado:

# Caso de que sea una confirmación,
# el usuario nos manda la id de sesión con la que se registró
if ($self->get_current_runmode() eq 'confirmacion') {
my $sid = $self->param('n');
if ($sid) {
# $self->query->param(-name => CGI::Session->name, -value => $sid, -override => 1);
$query->param(-name => CGI::Session->name, -value => $sid, -override => 1);
}
}

Es posible que Titanium abrevie todos estos procedimientos, pero, no lo conozco.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14476
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: El mejor Framework Web para Perl

Notapor danimera » 2014-01-05 10:19 @472

Hummmm, interesante...

Imagino que tendrá sus falencias CGI-App, también he tenido que lidiar con uf8 y codificaciones, sesiones, pero :wink: con los plugin me he bastado; me gusta el Authentication, Authorization para el trabajo con ACL...

Me ha tocado hacer un hack horrible para poder usar un fichero de configuración con los datos de la conexión a la db y luego cargarlos en un init con: $self->cfg('db_username'), por ejemplo en una super clase que usé como base de CGI_Application.

Y, claro que sí, yo ya tengo un tutorial que hice de CGI-Application. Lo bueno es que estas cosas las hiciéramos de forma más elegante y moderna, y lo haré a comienzos de este año, por qué no ^^
100% Telch - Perl Web Programming
Cali PerlMongers: http://cali.pm.org
Avatar de Usuario
danimera
Perlero frecuente
Perlero frecuente
 
Mensajes: 871
Registrado: 2005-06-23 19:02 @834
Ubicación: Colombia

Re: El mejor Framework Web para Perl

Notapor ficovh » 2014-01-07 00:17 @053

HIRONAKAMURA escribiste:Y me pregunto ¿cuál de estos es el mejor o más recomendable?

Dancer, en mi opinión.
ficovh
Perlero nuevo
Perlero nuevo
 
Mensajes: 13
Registrado: 2007-04-11 20:37 @900


Volver a Web

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado