SlideShare ist ein Scribd-Unternehmen logo
1 von 48
Javier E. Pérez P. Noviembre 2007 Desarrollo de aplicaciones web usando Catalyst y jQuery
Puntos a tratar ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
¿Qué es Catalyst? ,[object Object],[object Object],[object Object],[object Object]
Metodología MVC ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Ventajas de su uso
Ventajas de su uso ,[object Object],http://www.google.com/search ?hl=es&client=iceweasel-a&q=catalyst&btnG=Buscar  http://www.administracion.com/usuario ?id=11222333&accion=eliminar QueryString http://www.google.com/search/ lenguale/es/cliente/iceweasel-a/q/catalyst/Buscar  http://www.administracion.com/usuario /11222333/eliminar Basado en segmentos (segment based)
[object Object],“ there's nothing magical about catalyst, it doesn't get in your way,  it just dispatches urls to actions” Ventajas de su uso use PDF::CreateSimple; sub pdf : Local { my ($self,$c,$mensaje) = @_; # Heredamos el módulo como lo haríamos con cualquier aplicación CGI my $pdfFile = PDF::CreateSimple->new("root/reporte.pdf",undef,'LETTER'); # Pasamos algunos parametros (Esto no es catalyst, es perl) $pdfFile->drawText($mensaje,'Verdana',10,200,450,'black',3); $pdfFile->drawText('Generado con Catalyst','Verdana',10,200,400,'black',3); $pdfFile->drawImage('root/images/catalyst-logo.png',250,300); # esto no envía el pdf para descargar, sino que lo guarda en el disco $pdfFile->closeFile;  # Ahora enviamos al navegador a que muestre el archivo recién guardado $c->res->redirect("/archivo.pdf"); }
[object Object],[object Object]
Requisitos de instalación ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object]
Creando un proyecto ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Creando controlador ,[object Object],[object Object],package   sistap::Controller::unesco_area; use strict; use warnings; use base  'Catalyst::Controller'; sub  index : Private { my  ( $self, $c ) = @_; $c->response->body( 'Hola mundo' ); } sub  saludo : Local { my  ( $self, $c ) = @_; $c->response->body( 'Hola mundo... de nuevo' ); } 1;
Métodos de despacho ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],sub saludo  : Local  { my ( $self, $c ) = @_; $c->res->body('dvst'); }
Metodos de despacho ,[object Object],sub  wiki : PathPart('wiki') Chained('/') CaptureArgs(1) { my  ( $self, $c, $page_name ) = @_; # carga la página de nombre $page_name y coloca el objeto en el stash   $c->stash->{var1} = $page_name; } sub  rev : PathPart('rev') Chained('wiki') CaptureArgs(1) { my  ( $self, $c, $revision_id ) = @_; #  Usa el objeto de página que está en el stash y obtiene el número  # de revisión $revision_id.   $c->stash->{var2} = $revision_id  ; } sub  view : PathPart Chained('rev') Args(0) { my  ( $self, $c ) = @_; #  Muestra la revisión de la página en pantalla, my $salida ; $salida =  "Esta pantalla muestra la revision: "  . $c->stash->{var2} ; $salida .=  " de la pagina: "  .  $c->stash->{var1} ; $c->res->body($salida); } URL: http://localhost:3000/wiki/principal/rev/4/view  Salida por pantalla: Esta pantalla muestra la revision: 4 de la pagina: principal sub  view : PathPart Chained('wiki') Args(0) { my  ( $self, $c ) = @_; #  Muestra la revisión de la página en pantalla, my $salida ; $salida =  "Esta pantalla muestra la revision: "  . $c->stash->{var2} ; $salida .=  " de la pagina: "  .  $c->stash->{var1} ; $c->res->body($salida); }
Creando un modelo  (DBIx::Class -> Catalyst::Model::DBIC::Schema) ,[object Object],package   sistapDB ; =head1 NAME  sistapDB - DBIC Schema Class =cut # Nuetro esquema necesita heredar desde 'DBIx::Class::Schema' use base   qw/DBIx::Class::Schema/ ; # Se necesitan cargas las clases de modelo de base de datos acá __PACKAGE__->load_classes({ sistapDB => [qw/ unesco_area unesco_subarea unesco_categoria /] }); 1 ;
Creando un modelo ,[object Object],[object Object],[object Object],package   sistapDB::unesco_area; use base  qw/DBIx::Class/;  # Se cargan componentes requeridos por DBIC __PACKAGE__->load_components( qw/PK::Auto Core/ ); # Se asigna el nombre de la base de datos  __PACKAGE__->table( 'sta_unesco_area' ); # Se listan los campos de la tabla __PACKAGE__->add_columns( qw/id codigo nombre descripcion activo / ); # Se indica la llave primaria de la tabla __PACKAGE__->set_primary_key( qw/id/ ); # Asignamos las relaciones  __PACKAGE__->has_many(  subareas => 'sistapDB::unesco_subarea','id_unesco_area' ); 1 ;
Creando un modelo ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Trabajando con relaciones package sistapDB::unesco_area; #... Se hereda clase ; Carga de componentes ; nombre de la tabla ; nombre columnas ; llave primaria __PACKAGE__->add_columns(qw/id_area nombre/); # empezamos a declarar las relaciones a nivel de ORM __PACKAGE__->has_many( subareas => 'sistapDB::unesco_subarea',' id_area '); package sistapDB::unesco_subarea; #... igual que arriba __PACKAGE__->add_columns(qw/id_subarea  id_area  nombre/); # empezamos a declarar las relaciones a nivel de ORM __PACKAGE__->belongs_to( area => 'sistapDB::unesco_area',' id_area '); __PACKAGE__->has_many( categorias => 'sistapDB::unesco_subarea',' id_subarea '); package sistapDB::unesco_categoria; #... igual que arriba __PACKAGE__->add_columns(qw/id_categoria  id_subarea  nombre/); # empezamos a declarar las relaciones a nivel de ORM __PACKAGE__->belongs_to( subarea => 'sistapDB::unesco_subarea',' id_subarea ');
Usando DBIC en el controlador ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Vistas ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Vistas (TTSite -> Catalyst::Helper::View::TTSite) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],. |--  lib |  |--  config |  |  |-- col |  |  |-- main |  |  `-- url |  `--  site |  |-- footer |  |-- header |  |-- html |  |-- layout |  `-- wrapper `---  src |-- error.tt2 |-- message.tt2 |-- ttsite.css `-- welcome.tt2
Vistas (Template Toolkit) ,[object Object],[object Object],[object Object]
Vistas (JSON) ,[object Object],[object Object],my  @estados = $c->model ( "sistapDB::paises" )->find($id_pais)->estados( undef ,{ order_by  => ' nombre ' }) ; $c->stash ->{estados} = [ map  { {  id_estado  =>  $_->id_estado  ,  nombre_estado  =>  $_->nombre  } }  @estados  ]; $c->forward (' sistap::View::JSON '); my  @estados = $c->model ( "sistapDB::paises" )->find($id_pais)->estados()->all ; $c->stash ->{estados} =  @estados  ; $c->forward (' sistap::View::JSON ');
Vistas ,[object Object],[object Object],[object Object],--- name: sistap default_view: TT authentication: ...
Generación de formularios Catalyst::Controller::FormBuilder
Generación de formularios ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
FormBuilder en Catalyst  (CGI::FormBuilder) Descripción del formulario (root/forms/unesco_subarea/comun.fb) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
FormBuilder en Catalyst  (CGI::FormBuilder) Controlador (lib/sistap/Controller/unesco_subarea) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
FormBuilder en Catalyst  (CGI::FormBuilder) Plantilla (root/src/unesco_subarea/comun.tt) ó ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Variables de session
Agregando módulos  (Catalyst::Plugin) lib/sistap.pm ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Uso de sesiones ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
uso de Flash  (BTW: nada que ver con adobe ™  ) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
¿Qué es jQuery? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
jQuery ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
jQuery: Selectores ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Ajax   (ahah)
Ajax   (ahah) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Ajax (JSON) ,[object Object],my  $id_pais  =  $c->req->param ( “pais_id” ); my  @estados = $c->model ( "sistapDB::paises" )->find($id_pais)->estados( undef ,{ order_by  => ' nombre ' }) ; $c->stash ->{estados} = [ map  { {  id_estado  =>  $_->id_estado  ,  nombre_estado  =>  $_->nombre  } }  @estados  ]; $c->forward (' sistap::View::JSON '); ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
jQuery: plugins ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Depuración
Depuración ,[object Object]
Depuración ,[object Object]
Depuración ,[object Object]
Consejos ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Proyectos libres nacionales desarrollados usando Catalyst  ( Que conozco hasta ahora ) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
¿Preguntas?
Gracias por su atención

Weitere ähnliche Inhalte

Was ist angesagt?

WordCamp Cantabria - Código mantenible con WordPress
WordCamp Cantabria  - Código mantenible con WordPressWordCamp Cantabria  - Código mantenible con WordPress
WordCamp Cantabria - Código mantenible con WordPressAsier Marqués
 
Ejemplos de php_mysql
Ejemplos de php_mysqlEjemplos de php_mysql
Ejemplos de php_mysqlI LG
 
deSymfony 2013 - Creando aplicaciones web desde otro ángulo con Symfony y A...
deSymfony 2013 -  Creando aplicaciones web desde otro ángulo con Symfony y A...deSymfony 2013 -  Creando aplicaciones web desde otro ángulo con Symfony y A...
deSymfony 2013 - Creando aplicaciones web desde otro ángulo con Symfony y A...Pablo Godel
 
Cloud Computing: las nuevas Capas de Persistencia
Cloud Computing: las nuevas Capas de PersistenciaCloud Computing: las nuevas Capas de Persistencia
Cloud Computing: las nuevas Capas de PersistenciaDavid J. Brenes
 
Customizer: configurando un sitio en tiempo real
Customizer: configurando un sitio en tiempo realCustomizer: configurando un sitio en tiempo real
Customizer: configurando un sitio en tiempo realwpargentina
 
Slides components en
Slides components enSlides components en
Slides components enJavier López
 
Wp config.php
Wp config.phpWp config.php
Wp config.phpgregozz
 
Desymfony 2011 - Introducción a Symfony2
Desymfony 2011 - Introducción a Symfony2Desymfony 2011 - Introducción a Symfony2
Desymfony 2011 - Introducción a Symfony2Javier Eguiluz
 
Código mantenible, en Wordpress.
Código mantenible, en Wordpress.Código mantenible, en Wordpress.
Código mantenible, en Wordpress.Asier Marqués
 
Acceso a BBDD mediante un servlet
Acceso a BBDD mediante un servletAcceso a BBDD mediante un servlet
Acceso a BBDD mediante un servletjubacalo
 
Jsp directiva page
Jsp directiva pageJsp directiva page
Jsp directiva pagejubacalo
 
Introducción a recaptcha 3.0
Introducción a recaptcha 3.0Introducción a recaptcha 3.0
Introducción a recaptcha 3.0Jesús Ayús
 
Servlets que manejan datos de formularios HTML
Servlets que manejan datos de formularios HTMLServlets que manejan datos de formularios HTML
Servlets que manejan datos de formularios HTMLjubacalo
 
Reactividad en Angular, React y VueJS
Reactividad en Angular, React y VueJSReactividad en Angular, React y VueJS
Reactividad en Angular, React y VueJSJavier Abadía
 

Was ist angesagt? (20)

WordCamp Cantabria - Código mantenible con WordPress
WordCamp Cantabria  - Código mantenible con WordPressWordCamp Cantabria  - Código mantenible con WordPress
WordCamp Cantabria - Código mantenible con WordPress
 
Ejemplos de php_mysql
Ejemplos de php_mysqlEjemplos de php_mysql
Ejemplos de php_mysql
 
deSymfony 2013 - Creando aplicaciones web desde otro ángulo con Symfony y A...
deSymfony 2013 -  Creando aplicaciones web desde otro ángulo con Symfony y A...deSymfony 2013 -  Creando aplicaciones web desde otro ángulo con Symfony y A...
deSymfony 2013 - Creando aplicaciones web desde otro ángulo con Symfony y A...
 
Tarea 2 y_3
Tarea 2 y_3Tarea 2 y_3
Tarea 2 y_3
 
Cloud Computing: las nuevas Capas de Persistencia
Cloud Computing: las nuevas Capas de PersistenciaCloud Computing: las nuevas Capas de Persistencia
Cloud Computing: las nuevas Capas de Persistencia
 
Customizer: configurando un sitio en tiempo real
Customizer: configurando un sitio en tiempo realCustomizer: configurando un sitio en tiempo real
Customizer: configurando un sitio en tiempo real
 
Segunda sesion
Segunda sesionSegunda sesion
Segunda sesion
 
Slides components en
Slides components enSlides components en
Slides components en
 
Wp config.php
Wp config.phpWp config.php
Wp config.php
 
Desymfony 2011 - Introducción a Symfony2
Desymfony 2011 - Introducción a Symfony2Desymfony 2011 - Introducción a Symfony2
Desymfony 2011 - Introducción a Symfony2
 
Código mantenible, en Wordpress.
Código mantenible, en Wordpress.Código mantenible, en Wordpress.
Código mantenible, en Wordpress.
 
Acceso a BBDD mediante un servlet
Acceso a BBDD mediante un servletAcceso a BBDD mediante un servlet
Acceso a BBDD mediante un servlet
 
Jsp directiva page
Jsp directiva pageJsp directiva page
Jsp directiva page
 
Introducción a DJango
Introducción a DJangoIntroducción a DJango
Introducción a DJango
 
Introducción a recaptcha 3.0
Introducción a recaptcha 3.0Introducción a recaptcha 3.0
Introducción a recaptcha 3.0
 
Servlets que manejan datos de formularios HTML
Servlets que manejan datos de formularios HTMLServlets que manejan datos de formularios HTML
Servlets que manejan datos de formularios HTML
 
02%20 ant
02%20 ant02%20 ant
02%20 ant
 
Introducción a Flask
Introducción a FlaskIntroducción a Flask
Introducción a Flask
 
Reactividad en Angular, React y VueJS
Reactividad en Angular, React y VueJSReactividad en Angular, React y VueJS
Reactividad en Angular, React y VueJS
 
Funciones
FuncionesFunciones
Funciones
 

Andere mochten auch

SG09 Ux Flash Catalyst
SG09 Ux Flash CatalystSG09 Ux Flash Catalyst
SG09 Ux Flash CatalystEdgar Parada
 
Creación de Widgets con Flash Catalyst
Creación de Widgets con Flash CatalystCreación de Widgets con Flash Catalyst
Creación de Widgets con Flash CatalystDaniel Ramos
 
Tabla Comparativa SWITCHES CISCO
Tabla Comparativa SWITCHES CISCOTabla Comparativa SWITCHES CISCO
Tabla Comparativa SWITCHES CISCOliras loca
 
Flash Catalyst, como diseñar aplicaciones RIA
Flash Catalyst, como diseñar aplicaciones RIAFlash Catalyst, como diseñar aplicaciones RIA
Flash Catalyst, como diseñar aplicaciones RIAFutura Networks
 
Présentation Créagora: Le "Lean Startup"
Présentation Créagora: Le "Lean Startup"Présentation Créagora: Le "Lean Startup"
Présentation Créagora: Le "Lean Startup"Davender Gupta
 
Gcspwwapril2013linkedin
Gcspwwapril2013linkedinGcspwwapril2013linkedin
Gcspwwapril2013linkedinwinklepw
 
Nitrogen Summary study of private fleet greg stephens 2014
Nitrogen Summary study of private fleet greg stephens 2014Nitrogen Summary study of private fleet greg stephens 2014
Nitrogen Summary study of private fleet greg stephens 2014Lean Transit Consulting
 
Airbus military engineering update 2012
Airbus military engineering update 2012Airbus military engineering update 2012
Airbus military engineering update 2012ICSA, LLC
 
The F-35 and UID
The F-35 and UIDThe F-35 and UID
The F-35 and UIDICSA, LLC
 
Rscat6 k formation-mettre-en-oeuvre-les-switches-cisco-catalyst-6500-series
Rscat6 k formation-mettre-en-oeuvre-les-switches-cisco-catalyst-6500-seriesRscat6 k formation-mettre-en-oeuvre-les-switches-cisco-catalyst-6500-series
Rscat6 k formation-mettre-en-oeuvre-les-switches-cisco-catalyst-6500-seriesCERTyou Formation
 
A catalyst to bridge demand for skilled workforce
A catalyst to bridge demand for skilled workforceA catalyst to bridge demand for skilled workforce
A catalyst to bridge demand for skilled workforceCoCubes.com
 
Catalytic Reforming: Catalyst, Process Technology and Operations Overview
Catalytic Reforming:  Catalyst, Process Technology and Operations OverviewCatalytic Reforming:  Catalyst, Process Technology and Operations Overview
Catalytic Reforming: Catalyst, Process Technology and Operations OverviewGerard B. Hawkins
 
Votre Startup: La réponse à un problème qui mérite une solution
Votre Startup: La réponse à un problème qui mérite une solutionVotre Startup: La réponse à un problème qui mérite une solution
Votre Startup: La réponse à un problème qui mérite une solutionDavender Gupta
 
Big Data in Healthcare Made Simple: Where It Stands Today and Where It’s Going
Big Data in Healthcare Made Simple: Where It Stands Today and Where It’s GoingBig Data in Healthcare Made Simple: Where It Stands Today and Where It’s Going
Big Data in Healthcare Made Simple: Where It Stands Today and Where It’s GoingHealth Catalyst
 
Healthcare Information Systems - Past, Present, and Future
Healthcare Information Systems - Past, Present, and FutureHealthcare Information Systems - Past, Present, and Future
Healthcare Information Systems - Past, Present, and FutureHealth Catalyst
 

Andere mochten auch (20)

SG09 Ux Flash Catalyst
SG09 Ux Flash CatalystSG09 Ux Flash Catalyst
SG09 Ux Flash Catalyst
 
01 Introducción a Flash Catalyst
01 Introducción a Flash Catalyst01 Introducción a Flash Catalyst
01 Introducción a Flash Catalyst
 
Creación de Widgets con Flash Catalyst
Creación de Widgets con Flash CatalystCreación de Widgets con Flash Catalyst
Creación de Widgets con Flash Catalyst
 
Mind jet catalyst
Mind jet catalystMind jet catalyst
Mind jet catalyst
 
Tabla Comparativa SWITCHES CISCO
Tabla Comparativa SWITCHES CISCOTabla Comparativa SWITCHES CISCO
Tabla Comparativa SWITCHES CISCO
 
Flash Catalyst, como diseñar aplicaciones RIA
Flash Catalyst, como diseñar aplicaciones RIAFlash Catalyst, como diseñar aplicaciones RIA
Flash Catalyst, como diseñar aplicaciones RIA
 
Présentation Créagora: Le "Lean Startup"
Présentation Créagora: Le "Lean Startup"Présentation Créagora: Le "Lean Startup"
Présentation Créagora: Le "Lean Startup"
 
Presentation platform flash
Presentation platform flashPresentation platform flash
Presentation platform flash
 
cv
cvcv
cv
 
Gcspwwapril2013linkedin
Gcspwwapril2013linkedinGcspwwapril2013linkedin
Gcspwwapril2013linkedin
 
Nitrogen Summary study of private fleet greg stephens 2014
Nitrogen Summary study of private fleet greg stephens 2014Nitrogen Summary study of private fleet greg stephens 2014
Nitrogen Summary study of private fleet greg stephens 2014
 
Airbus military engineering update 2012
Airbus military engineering update 2012Airbus military engineering update 2012
Airbus military engineering update 2012
 
The F-35 and UID
The F-35 and UIDThe F-35 and UID
The F-35 and UID
 
New Maint Philo
New Maint PhiloNew Maint Philo
New Maint Philo
 
Rscat6 k formation-mettre-en-oeuvre-les-switches-cisco-catalyst-6500-series
Rscat6 k formation-mettre-en-oeuvre-les-switches-cisco-catalyst-6500-seriesRscat6 k formation-mettre-en-oeuvre-les-switches-cisco-catalyst-6500-series
Rscat6 k formation-mettre-en-oeuvre-les-switches-cisco-catalyst-6500-series
 
A catalyst to bridge demand for skilled workforce
A catalyst to bridge demand for skilled workforceA catalyst to bridge demand for skilled workforce
A catalyst to bridge demand for skilled workforce
 
Catalytic Reforming: Catalyst, Process Technology and Operations Overview
Catalytic Reforming:  Catalyst, Process Technology and Operations OverviewCatalytic Reforming:  Catalyst, Process Technology and Operations Overview
Catalytic Reforming: Catalyst, Process Technology and Operations Overview
 
Votre Startup: La réponse à un problème qui mérite une solution
Votre Startup: La réponse à un problème qui mérite une solutionVotre Startup: La réponse à un problème qui mérite une solution
Votre Startup: La réponse à un problème qui mérite une solution
 
Big Data in Healthcare Made Simple: Where It Stands Today and Where It’s Going
Big Data in Healthcare Made Simple: Where It Stands Today and Where It’s GoingBig Data in Healthcare Made Simple: Where It Stands Today and Where It’s Going
Big Data in Healthcare Made Simple: Where It Stands Today and Where It’s Going
 
Healthcare Information Systems - Past, Present, and Future
Healthcare Information Systems - Past, Present, and FutureHealthcare Information Systems - Past, Present, and Future
Healthcare Information Systems - Past, Present, and Future
 

Ähnlich wie Desarrollando aplicaciones web usando Catalyst y jQuery

tutorial de slide.com
tutorial de slide.comtutorial de slide.com
tutorial de slide.comoctabio
 
Servicio web java php perl google
Servicio web  java php perl googleServicio web  java php perl google
Servicio web java php perl googleSeveredDRA
 
Curso de Django | Django Course
Curso de Django | Django CourseCurso de Django | Django Course
Curso de Django | Django Coursealeperalta
 
Node js Alt.net Hispano
Node js Alt.net HispanoNode js Alt.net Hispano
Node js Alt.net Hispanohdgarcia
 
Parte II. Notas Rapidas (sticky notes) App W8: MVVM y SQLite.
Parte II. Notas Rapidas (sticky notes) App W8: MVVM y SQLite.Parte II. Notas Rapidas (sticky notes) App W8: MVVM y SQLite.
Parte II. Notas Rapidas (sticky notes) App W8: MVVM y SQLite.Juan Manuel
 
Drupal7 para desarrolladores
Drupal7 para desarrolladoresDrupal7 para desarrolladores
Drupal7 para desarrolladoresPedro Cambra
 
Tutorial3 Desymfony - La Vista. Twig
Tutorial3 Desymfony - La Vista. TwigTutorial3 Desymfony - La Vista. Twig
Tutorial3 Desymfony - La Vista. TwigMarcos Labad
 
Taller introduccion symfony2
Taller introduccion symfony2Taller introduccion symfony2
Taller introduccion symfony2Mario IC
 
Rendimiento en aplicaciones web con Symfony2
Rendimiento en aplicaciones web con Symfony2Rendimiento en aplicaciones web con Symfony2
Rendimiento en aplicaciones web con Symfony2Asier Marqués
 
Configuración Script Usuarios Masivos Windows Server 2012 R2
Configuración Script Usuarios Masivos Windows Server 2012 R2Configuración Script Usuarios Masivos Windows Server 2012 R2
Configuración Script Usuarios Masivos Windows Server 2012 R2cyberleon95
 

Ähnlich wie Desarrollando aplicaciones web usando Catalyst y jQuery (20)

tutorial de slide.com
tutorial de slide.comtutorial de slide.com
tutorial de slide.com
 
Jquery para principianes
Jquery para principianesJquery para principianes
Jquery para principianes
 
J M E R L I N P H P
J M E R L I N P H PJ M E R L I N P H P
J M E R L I N P H P
 
APIREST LARAVEL Y PHP.pptx
APIREST LARAVEL Y PHP.pptxAPIREST LARAVEL Y PHP.pptx
APIREST LARAVEL Y PHP.pptx
 
Introducción a Kohana Framework
Introducción a Kohana FrameworkIntroducción a Kohana Framework
Introducción a Kohana Framework
 
Servicio web java php perl google
Servicio web  java php perl googleServicio web  java php perl google
Servicio web java php perl google
 
Curso de Django | Django Course
Curso de Django | Django CourseCurso de Django | Django Course
Curso de Django | Django Course
 
Node js Alt.net Hispano
Node js Alt.net HispanoNode js Alt.net Hispano
Node js Alt.net Hispano
 
Parte II. Notas Rapidas (sticky notes) App W8: MVVM y SQLite.
Parte II. Notas Rapidas (sticky notes) App W8: MVVM y SQLite.Parte II. Notas Rapidas (sticky notes) App W8: MVVM y SQLite.
Parte II. Notas Rapidas (sticky notes) App W8: MVVM y SQLite.
 
Drupal7 para desarrolladores
Drupal7 para desarrolladoresDrupal7 para desarrolladores
Drupal7 para desarrolladores
 
6.angular js
6.angular js6.angular js
6.angular js
 
Tutorial3 Desymfony - La Vista. Twig
Tutorial3 Desymfony - La Vista. TwigTutorial3 Desymfony - La Vista. Twig
Tutorial3 Desymfony - La Vista. Twig
 
De HTML a Express
De HTML a ExpressDe HTML a Express
De HTML a Express
 
Taller introduccion symfony2
Taller introduccion symfony2Taller introduccion symfony2
Taller introduccion symfony2
 
EXAMEN
EXAMENEXAMEN
EXAMEN
 
Rendimiento en aplicaciones web con Symfony2
Rendimiento en aplicaciones web con Symfony2Rendimiento en aplicaciones web con Symfony2
Rendimiento en aplicaciones web con Symfony2
 
Curso AngularJS - 7. temas avanzados
Curso AngularJS - 7. temas avanzadosCurso AngularJS - 7. temas avanzados
Curso AngularJS - 7. temas avanzados
 
Php Basico
Php BasicoPhp Basico
Php Basico
 
Servicios web
Servicios webServicios web
Servicios web
 
Configuración Script Usuarios Masivos Windows Server 2012 R2
Configuración Script Usuarios Masivos Windows Server 2012 R2Configuración Script Usuarios Masivos Windows Server 2012 R2
Configuración Script Usuarios Masivos Windows Server 2012 R2
 

Kürzlich hochgeladen

El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxAlexander López
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúCEFERINO DELGADO FLORES
 
Presentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia ArtificialPresentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia Artificialcynserafini89
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxtjcesar1
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxGESTECPERUSAC
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel tallerValentinaTabares11
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfedepmariaperez
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son241514984
 
tarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzztarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzzAlexandergo5
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptchaverriemily794
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptJavierHerrera662252
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfjeondanny1997
 

Kürzlich hochgeladen (20)

El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
 
Presentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia ArtificialPresentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia Artificial
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptx
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel taller
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdf
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son
 
tarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzztarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzz
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
 

Desarrollando aplicaciones web usando Catalyst y jQuery

  • 1. Javier E. Pérez P. Noviembre 2007 Desarrollo de aplicaciones web usando Catalyst y jQuery
  • 2.
  • 3.
  • 4.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18. Trabajando con relaciones package sistapDB::unesco_area; #... Se hereda clase ; Carga de componentes ; nombre de la tabla ; nombre columnas ; llave primaria __PACKAGE__->add_columns(qw/id_area nombre/); # empezamos a declarar las relaciones a nivel de ORM __PACKAGE__->has_many( subareas => 'sistapDB::unesco_subarea',' id_area '); package sistapDB::unesco_subarea; #... igual que arriba __PACKAGE__->add_columns(qw/id_subarea id_area nombre/); # empezamos a declarar las relaciones a nivel de ORM __PACKAGE__->belongs_to( area => 'sistapDB::unesco_area',' id_area '); __PACKAGE__->has_many( categorias => 'sistapDB::unesco_subarea',' id_subarea '); package sistapDB::unesco_categoria; #... igual que arriba __PACKAGE__->add_columns(qw/id_categoria id_subarea nombre/); # empezamos a declarar las relaciones a nivel de ORM __PACKAGE__->belongs_to( subarea => 'sistapDB::unesco_subarea',' id_subarea ');
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25. Generación de formularios Catalyst::Controller::FormBuilder
  • 26.
  • 27.
  • 28.
  • 29.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37. Ajax (ahah)
  • 38.
  • 39.
  • 40.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 48. Gracias por su atención