• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Symfony parte 8
 

Symfony parte 8

on

  • 3,454 views

Trabajando con formularios, y programando la entrada a la aplicación. Login y sesión de usuarios.

Trabajando con formularios, y programando la entrada a la aplicación. Login y sesión de usuarios.

Statistics

Views

Total Views
3,454
Views on SlideShare
3,407
Embed Views
47

Actions

Likes
2
Downloads
8
Comments
0

3 Embeds 47

http://www.slideshare.net 25
http://gestion.poodu.cl 21
http://webcache.googleusercontent.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

CC Attribution-NonCommercial LicenseCC Attribution-NonCommercial License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • 1 – Observar que para crear el módulo Usuario, debemos crear los tipos de usuarios del sistema. Por lo mismo, vamos a crear el archivo de dato del sistema.
  • Traducimos el módulo a español. - Creamos un registro, y percatemonos que existen validaciones que hay que desarrollar.
  • - Campo Correo en la clase base es declarado como sfValidatorString() = sfValidatorEmail()
  • RECORDANDO.
  • El validatorSchema[‘correo’] = new sfValidatorEmail() $this->validatorSchema['correo'] = new sfValidatorEmail(array(), array('required'=>'Ingrese Correo', 'invalid'=>'El correo es incorrecto'));
  • El validatorSchema[‘correo’] = new sfValidatorEmail() $this->validatorSchema['correo'] = new sfValidatorEmail(array(), array('required'=>'Ingrese Correo', 'invalid'=>'El correo es incorrecto'));
  • Traducimos el módulo a español. - Creamos un registro, y percatemonos que existen validaciones que hay que desarrollar.
  • Enseñarles lo del listado
  • Enseñarles lo del listado
  • Enseñarles lo del listado
  • El validatorSchema[‘correo’] = new sfValidatorEmail() $this->validatorSchema['correo'] = new sfValidatorEmail(array(), array('required'=>'Ingrese Correo', 'invalid'=>'El correo es incorrecto'));
  • El validatorSchema[‘correo’] = new sfValidatorEmail() $this->validatorSchema['correo'] = new sfValidatorEmail(array(), array('required'=>'Ingrese Correo', 'invalid'=>'El correo es incorrecto'));
  • Enseñarles lo del listado
  • El validatorSchema[‘correo’] = new sfValidatorEmail() $this->validatorSchema['correo'] = new sfValidatorEmail(array(), array('required'=>'Ingrese Correo', 'invalid'=>'El correo es incorrecto'));
  • El validatorSchema[‘correo’] = new sfValidatorEmail() $this->validatorSchema['correo'] = new sfValidatorEmail(array(), array('required'=>'Ingrese Correo', 'invalid'=>'El correo es incorrecto'));
  • Enseñarles lo del listado
  • - Campo Correo en la clase base es declarado como sfValidatorString() = sfValidatorEmail()
  • 2 campos: login y password y el botón enviar. - Redireccionar al routing a login/index - Borrar el this->forward que apunta al módulo por defecto en el módulo login.
  • Redireccionar el routing de la aplicación administrador al módulo login acción index.
  • Revisen las clases Bases.
  • Revisen las clases Bases.
  • Revisen las clases Bases.
  • Revisen las clases Bases.
  • Revisen las clases Bases.
  • Revisen las clases Bases.
  • Revisen las clases Bases.
  • Revisen las clases Bases.
  • Revisen las clases Bases.
  • Revisen las clases Bases.
  • Revisen las clases Bases.

Symfony parte 8 Symfony parte 8 Presentation Transcript

  • Symfony Parte 8 Rodrigo Miranda [email_address] [email_address] http://www.rodrigomiranda.cl
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl Formularios
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl
    • Protección, agregar al comienzo de la acción que se desee proteger.
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl Mensajes Flash
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl Atributos Flash: 1.- Es un valor temporal que se almacena en la sesión del usuario y que se borra automáticamente después de la siguiente petición. 2.- Es la manera de pasar información desde la acción que recibe la petición a la acción a la cual redireccionamos (ejemplo, después de submitir y procesar un formulario).
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl En la acción: Configurar: Obtener:
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl En la platilla:
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl Creación Módulo Usuario
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl
    • Crear tipos de Usuarios
    • Para comenzar debemos crear un archivo de datos para el Modelo TipoUsuario .
    • 040_tipousuario.yml
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl
    • Crear módulo usuario
    • Creamos el módulo usuario con el siguiente comando.
    #./symfony propel:generate-module –whith-show administrador usuario Usuario
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl Probamos el Módulo en el navegador
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl
    • Mo dificando el módulo Usuario.
    • Traducimos el módulo (acciones y nombre de templates) a español.
    • Cambiamos la validación de algunos campos en relación a la clase base BaseUsuarioForm.
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl
    • Mo dificando el módulo Usuario.
    • Referenciando sólo a un campo de la clase Base.
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl
    • Mo dificando el módulo de Usuarios.
    • Incorporando Mensajes sin alterar el validador.
    • $this -> validatorSchema [‘nombrecampo’ ]->setMessages(arregloAsociativo);
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl Modificando Labels y tamaños de Campo en Formulario.
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl Modificando Columnas en Listado.
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl Modificando Campos de template verSuccess.php
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl Validación de Usuario
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl
    • sfUser .
    • Para acceder a la sesión del usuario actual se accede en la acción con el método getUser() , que es una instancia de la clase sfUser .
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl
    • sfUser .
    • En la sesión podemos guardar cualquier tipo de información (cadena de texto, arrays, y arrays asociativos) pero no Objetos.
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl
    • Algunas clases del núcleo de Symfony utilizan un contenedor de parámetros que permite el uso de namespaces [gracias a la clase sfNamespacedParameterHolder ]
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl
    • Si utilizamos un tercer parámetro en un getter o en un setter, ese parámetro se utiliza como namespace . Por lo tanto el parámetro sólo está definido dentro de ese namespace .
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl Crear el Módulo Login
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl
    • Crear módulo login
    • Creamos el módulo login con el siguiente comando.
    #./symfony generate:module administrador login
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl
    • Módulo Login .
    • Encargado de mostrar la página de ingreso al sistema.
    • Crear la sesión del Usuario.
    • Cerrar la sesión del Usuario.
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl Crear pantalla de Ingreso
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl Redireccionar Routing de la Aplicación
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl Crear clase LoginForm
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl Clase LoginForm
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl Validadores Simples
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl
    • sfValidatorString
    • Valida y convierte la cadena original en una cadena de texto.
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl
    • sfValidatorRegex
    • Valida una cadena de texto en función de una expresión regular.
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl
    • sfValidatorEmail
    • Valida que una cadena tenga el formato correcto de una dirección de email (hereda de la clase sfValidatorRegex).
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl
    • sfValidatorInteger
    • Valida y convierte el valor original en un número entero.
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl
    • sfValidatorNumber
    • Valida y convierte el valor original en un número.
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl
    • sfValidatorBoolean
    • Valida un valor Booleano y devuelve true o false.
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl
    • sfValidatorChoice
    • Valida que el valor original pertenezca a una lista de valores esperados.
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl
    • sfValidatorPass
    • Es un validador especial, ya que no realiza validación  y que simplemente devuelve el valor original intacto.
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl
    • sfValidatorCallback
    • Permite delegar la validación del valor original al código PHP ejecutable indicado, también llamado callback.
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl Validadores Globales
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl
    • pre-validadores y post-validadores
    • Los validadores globales se utilizan antes o después de la validación de los campos de un formulario. Generalmente se utiliza en post-validator ya que los datos están validados y limpios.
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl
    • Para trabajar los post-validator ocupamos la sgte sintaxis:
    • $this -> validatorSchema ->setPostValidator( VALIDADOR );
  • Rodrigo Miranda Blog: www.rodrigomiranda.cl Preguntas?