Symfony

                                              David J.
                                              Brenes
     ...
La importancia de la URL

                                                             Symfony

                          ...
La importancia de la URL

                             Symfony

                             David J.
                    ...
Las rutas en Symfony

                                                              Symfony

                             ...
routes.yml

                                                          Symfony

                                           ...
routes.yml

                                                                      Symfony

                               ...
routes.yml

                                                           Symfony

                                          ...
Parámetros en la URL

                                                            Symfony

                               ...
Parámetros estáticos

                                                             Symfony

                              ...
routes.yml

                                                                           Symfony

                          ...
URLHelper

                                                              Symfony

                                        ...
Funciones

                                                         Symfony

                                             ...
Usando el Helper

                                                                          Symfony

                     ...
URLs para un modelo

                                                           Symfony

                                 ...
Una ruta de modelo

                                                              Symfony

                               ...
Ayuda en la acción

                                                    Symfony

                                         ...
Ayuda en la acción

                                                                 Symfony

                            ...
Ayuda en la vista

                                                             Symfony

                                 ...
Ayuda en la vista

                                                                Symfony

                              ...
URLs de colecciones

                                                             Symfony

                               ...
URLs de colecciones

                                                Symfony

                                            ...
Referencias

                                                Symfony

                                                Davi...
Licencia

                                                               Symfony

                                        ...
Upcoming SlideShare
Loading in …5
×

Desarrollo rápido con PHP y Symfony (V): Las rutas

2,697 views

Published on

Explicación del sistema de rutas de Symfony para la generación de URLs amigables

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,697
On SlideShare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
95
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Desarrollo rápido con PHP y Symfony (V): Las rutas

  1. 1. Symfony David J. Brenes Martínez Desarrollo rápido con PHP y Symfony URLs amigables (V) Las rutas Configuración de rutas Parámetros Helpers David J. Brenes Martínez URLs y el Modelo Curso de Extensión Universitaria Referencias, Créditos y Desarrollo web avanzado Licencia Universidad de Oviedo 2010/03/22
  2. 2. La importancia de la URL Symfony David J. Brenes Martínez URLs amigables Las URLs pueden aportar información al usuario sobre Configuración de rutas la página Parámetros Helpers En algunos casos es la primera fuente de información URLs y el que se recibe Modelo Referencias, Créditos y Licencia
  3. 3. La importancia de la URL Symfony David J. Brenes Martínez URLs amigables Configuración de rutas Parámetros Helpers URLs y el Modelo Referencias, Créditos y Licencia
  4. 4. Las rutas en Symfony Symfony David J. Brenes Martínez URLs amigables Configuración El controlador decide a que acción corresponde la ruta de rutas Parámetros Para ello comprueba las rutas configuradas e intenta Helpers encajar la ruta actual URLs y el Modelo Referencias, Créditos y Licencia
  5. 5. routes.yml Symfony David J. Brenes Martínez URLs amigables Configuración Listado de rutas que componen nuestra aplicación de rutas Parámetros Algunas rutas pueden tener un significado especial Helpers Contamos con rutas por defecto URLs y el Modelo Referencias, Créditos y Licencia
  6. 6. routes.yml Symfony David J. Brenes Martínez URLs amigables Configuración nombre_ruta : de rutas Parámetros u r l : / u r l _ 1 / : param_url_1 / u r l _ 2 / : param_url_2 Helpers param : { param_no_url : v a l o r } URLs y el Modelo Referencias, Créditos y Licencia
  7. 7. routes.yml Symfony David J. Brenes Martínez URLs amigables Las rutas reciben un nombre para poder referirse a Configuración ellas de rutas Parámetros Cada ruta puede tener parmámetros dinámicos dentro Helpers de la URL o estáticos en los params URLs y el Modelo El módulo y la acción son dos parámetros Referencias, Créditos y Licencia
  8. 8. Parámetros en la URL Symfony David J. Brenes Martínez URLs Son fragmentos de la URL que se mapean como amigables parámetros Configuración de rutas Las acciones acceden a estos parámetros a través de Parámetros $request->getParameter() Helpers URLs y el Estos parámetros son dinámicos así que se les pueden Modelo poner condiciones (ser números enteros, por ejemplo) Referencias, Créditos y en forma de expresiones regulares. Licencia
  9. 9. Parámetros estáticos Symfony David J. Brenes Martínez URLs Son parámetros cuyo valor se pone de manera estática amigables Configuración para la ruta de rutas Parámetros Las acciones acceden a estos parámetros a través de Helpers $request->getParameter() URLs y el Modelo Pueden usarse para poner valor por defecto a un Referencias, parámetro de URL Créditos y Licencia
  10. 10. routes.yml Symfony David J. Brenes Martínez URLs amigables conductores_de_coche : Configuración url : / c a r / : m a t r i c u l a / d r i v e r s / : page de rutas Parámetros param : { module : d r i v e r s , a c t i o n : l i s t , Helpers page : 1 } URLs y el Modelo r e q u i r e m e n t s : { page : d+ } Referencias, Créditos y Licencia
  11. 11. URLHelper Symfony David J. Brenes Martínez URLs amigables El helper del Sistema de Rutas es URLHeper Configuración de rutas Permite construir enlaces y URLs para la aplicación de Parámetros manera independiente a la configuración Helpers URLs y el Podemos cambiar las URLs externas de una aplicación Modelo en producción sin que los enlaces dejen de funcionar Referencias, Créditos y Licencia
  12. 12. Funciones Symfony David J. Brenes Martínez url_to: Te devuelve una URL externa para la URL URLs amigables interna que le pases Configuración link_to: Construye un enlace con la URL que de rutas Parámetros devolvería url_to Helpers Un enlace interno es URLs y el Modelo modulo/acción?param1=valor1&param2=valor2 Referencias, Créditos y Para acelerar las funciones se puede usar también Licencia @nombre_ruta?param1=valor1&param2=valor2
  13. 13. Usando el Helper Symfony David J. Brenes Martínez u r l _ t o ( " d r i v e r s / l i s t ? m a t r i c u l a =0000AAA &page=5 " ) URLs amigables / / −−> / c a r /0000AAA / d r i v e r s / 5 Configuración de rutas Parámetros l i n k _ t o ( " Conductores " , Helpers " @conductores_de_coche? m a t r i c u l a =0000AAA URLs y el Modelo &page=5 " ) Referencias, / / −−> <a h r e f = " / c a r /0000AAA / d r i v e r s / 5 " > Créditos y Licencia // Conductores // </a>
  14. 14. URLs para un modelo Symfony David J. Brenes Martínez URLs amigables Un parámetro para la ruta es la clase que la maneja Configuración de rutas Por defecto es el router de Symfony Parámetros Helpers Doctrine tiene su propio router URLs y el Modelo Aporta ventajas para acceder a ciertos recursos Referencias, Créditos y Licencia
  15. 15. Una ruta de modelo Symfony David J. Brenes Martínez URLs coche : amigables Configuración url : / car / : m a t r i c u l a de rutas class : sfDoctrineRoute Parámetros Helpers o p t i o n s : { model : Car , t y p e : o b j e c t } URLs y el param : { module : cars , a c t i o n : show } Modelo r e q u i r e m e n t s : { sf_method : [ g e t ] } Referencias, Créditos y Licencia
  16. 16. Ayuda en la acción Symfony David J. Brenes Martínez URLs amigables Configuración de rutas La ruta actual te permite obtener el objeto Parámetros Helpers Si el objeto no existe lanza un error 404 URLs y el Modelo Referencias, Créditos y Licencia
  17. 17. Ayuda en la acción Symfony David J. Brenes Martínez URLs amigables Configuración de rutas $coche = $ t h i s −>getRoute () − > g e t O b j e c t ( ) ; Parámetros Helpers URLs y el Modelo Referencias, Créditos y Licencia
  18. 18. Ayuda en la vista Symfony David J. Brenes Martínez URLs amigables El helper de enlaces acepta el objeto para el que Configuración queremos generar el enlace de rutas Parámetros Podemos pasar parametros adicionales Helpers URLs y el Debemos crear métodos en la clase para que el router Modelo los obtenga del objeto Referencias, Créditos y Licencia
  19. 19. Ayuda en la vista Symfony David J. Brenes Martínez URLs amigables Configuración de rutas u r l _ f o r ( array ( ’ s f _ r o u t e ’ => ’ coche ’ , Parámetros ’ s f _ s u b j e c t ’ => $coche ) ) Helpers URLs y el Modelo Referencias, Créditos y Licencia
  20. 20. URLs de colecciones Symfony David J. Brenes Martínez URLs amigables Permiten definir multiples URLs para gestionar Configuración de rutas colecciones Parámetros Helpers Define URLs para crear, eliminar, actualizar, mostrar, URLs y el listar y los formularios Modelo Referencias, Créditos y Licencia
  21. 21. URLs de colecciones Symfony David J. Brenes Martínez URLs amigables Configuración car : de rutas Parámetros class : sfDoctrineRouteCollection Helpers o p t i o n s : { model : Car } URLs y el Modelo Referencias, Créditos y Licencia
  22. 22. Referencias Symfony David J. Brenes Martínez Symfony Project: www.symfony-project.org URLs amigables The Symfony Reference Book: http://www. Configuración symfony-project.org/reference/1_4/en/ de rutas Parámetros Practical Symfony: Helpers http://www.symfony-project.org/jobeet/1_ URLs y el Modelo 4/Doctrine/en/ Referencias, Créditos y The Definitive Guide to Symfony: Licencia http://www.symfony-project.org/book/1_2/
  23. 23. Licencia Symfony David J. Brenes Martínez Estas transparencias se publican bajo licencia Creative URLs Commons y se pueden redistribuir o modificar bajo las amigables Configuración siguientes condiciones: de rutas Parámetros Se dé reconocimiento al autor de estas transparencias. Helpers No se use con propósitos comerciales. URLs y el Modelo Se distribuya con la misma licencia. Referencias, Créditos y Texto de la licencia: http: Licencia //creativecommons.org/licenses/by-nc-sa/3.0/

×