SlideShare una empresa de Scribd logo
Castellón - 5 y 6 de Julio 2010 – Universitat Jaume I organizan patrocinan colaboran Jornadas Symfony 5 y 6 de julio 2010 Universitat Jaume I, Castellón http://decharlas.uji.es/symfony
Admin Generator Un gran poder conlleva una gran responsabilidad Javier López, flai.es Jornadas Symfony 5 y 6 de julio 2010 Universitat Jaume I, Castellón http://decharlas.uji.es/symfony
http://www.flai.es Jornadas Symfony  http://decharlas.uji.es/symfony sesión patrocinada por
Muchas aplicaciones son sólo una interfaz para la BBDD Proceso muy repetitivo y siempre igual REATE: nuevo ETRIEVE: listar PDATE: actualizar ELETE: eliminar C R U D Jornadas Symfony  http://decharlas.uji.es/symfony ¿CRUD?
Symfony ofrece dos soluciones  Jornadas Symfony  http://decharlas.uji.es/symfony God bless symfony CRUD Generator Admin Generator symfony doctrine:generate-module symfony doctrine:generate-admin
Symfony ofrece dos soluciones  Jornadas Symfony  http://decharlas.uji.es/symfony God bless symfony CRUD Generator Admin Generator symfony doctrine:generate-module symfony doctrine:generate-admin Killer Feature
Jornadas Symfony  http://decharlas.uji.es/symfony pero, ¿qué es?
Jornadas Symfony  http://decharlas.uji.es/symfony Un ejemplo
Admin generator  =   generator.yml Jornadas Symfony  http://decharlas.uji.es/symfony Admin Generator
Admin generator  =   generator.yml Jornadas Symfony  http://decharlas.uji.es/symfony Admin Generator
Jornadas Symfony  http://decharlas.uji.es/symfony Admin Generator generator.yml forms filters models actions partials generator
Jornadas Symfony  http://decharlas.uji.es/symfony Cómo funciona
/apps/backend/modules /cache/backend/dev/modules Jornadas Symfony  http://decharlas.uji.es/symfony Cómo funciona
Jornadas Symfony  http://decharlas.uji.es/symfony Cómo funciona xxxGeneratorConfiguration generator.yml sfDoctrineGenerator generator: class: sfDoctrineGenerator param:[] generator: config: fields: [] list:  [] edit:  [] ...
/plugins/data/generator/sfDoctrineModule/admin /SKELETON /TEMPLATE 1. se ejecuta php 2.  [?php ?] => <?php ?> Sustitución ##variable## Jornadas Symfony  http://decharlas.uji.es/symfony Cómo funciona sfDoctrineGenerator Módulo en  /app/modules/xxx Módulo en  /cache/modules/autoxxx COPIADO COMPILADO COPIADO
/SKELETON /TEMPLATE Jornadas Symfony  http://decharlas.uji.es/symfony Cómo funciona
/SKELETON /TEMPLATE Jornadas Symfony  http://decharlas.uji.es/symfony Cómo funciona
/SKELETON /TEMPLATE Jornadas Symfony  http://decharlas.uji.es/symfony Cómo funciona
/lib/data/generator/sfDoctrineModule/mitema /SKELETON /TEMPLATE 1. se ejecuta php 2.  [?php ?] => <?php ?> Sustitución ##variable## Jornadas Symfony  http://decharlas.uji.es/symfony Tu propio “admin-generator” sfDoctrineGenerator Módulo en  /app/modules/xxx Módulo en  /cache/modules/autoxxx COPIADO COMPILADO COPIADO generator: param: theme: mitema
El listado La edición Jornadas Symfony  http://decharlas.uji.es/symfony Las acciones
indexSuccess.php Jornadas Symfony  http://decharlas.uji.es/symfony El listado  desde la vista
indexSuccess.php Jornadas Symfony  http://decharlas.uji.es/symfony El listado  desde la vista _list_header
indexSuccess.php Jornadas Symfony  http://decharlas.uji.es/symfony El listado  desde la vista _flashes
indexSuccess.php Jornadas Symfony  http://decharlas.uji.es/symfony El listado  desde la vista _filters
indexSuccess.php Jornadas Symfony  http://decharlas.uji.es/symfony El listado  desde la vista _list batch actions
indexSuccess.php Jornadas Symfony  http://decharlas.uji.es/symfony El listado  desde la vista _list actions
indexSuccess.php Jornadas Symfony  http://decharlas.uji.es/symfony El listado  desde la vista _list actions
indexSuccess.php Jornadas Symfony  http://decharlas.uji.es/symfony El listado  desde la vista _list
indexSuccess.php Jornadas Symfony  http://decharlas.uji.es/symfony El listado  desde la vista _list
_list.php Jornadas Symfony  http://decharlas.uji.es/symfony El listado  desde la vista _list_th_[tabular|stacked ]
_list.php Jornadas Symfony  http://decharlas.uji.es/symfony El listado  desde la vista _list_td_[tabular|stacked ]
_list.php Jornadas Symfony  http://decharlas.uji.es/symfony El listado  desde la vista _list_td _actions
_list.php Jornadas Symfony  http://decharlas.uji.es/symfony El listado  desde la vista _pagination
actions.class.php Jornadas Symfony  http://decharlas.uji.es/symfony El listado  desde la acción
Jornadas Symfony  http://decharlas.uji.es/symfony El listado  construyendo la query $query sf_user /admin_module product.sort sf_user /admin_module product.filter ProductFormFilter buildQuery configuration defaultFilters
actions.class.php Jornadas Symfony  http://decharlas.uji.es/symfony El listado  desde la acción
editSuccess.php newSucccess.php Jornadas Symfony  http://decharlas.uji.es/symfony La edición  desde la vista _form_header
editSuccess.php newSucccess.php Jornadas Symfony  http://decharlas.uji.es/symfony La edición  desde la vista _flashes
editSuccess.php newSucccess.php Jornadas Symfony  http://decharlas.uji.es/symfony La edición  desde la vista _form_footer
editSuccess.php newSucccess.php Jornadas Symfony  http://decharlas.uji.es/symfony La edición  desde la vista _form
editSuccess.php newSucccess.php Jornadas Symfony  http://decharlas.uji.es/symfony La edición  desde la vista _form_actions
Jornadas Symfony  http://decharlas.uji.es/symfony La edición  desde la acción GET POST GET PUT
Nuevo framework de formulario a partir de sf 1.0 La lógica depende del formulario no de la acción, no depende del generador José Antonio Pío os contará como domesticarlos mañana Jornadas Symfony  http://decharlas.uji.es/symfony La edición  desde la acción
Jornadas Symfony  http://decharlas.uji.es/symfony Filtros
Formularios muy especiales XXX = field YYY = type Jornadas Symfony  http://decharlas.uji.es/symfony Los Filtros TableMethod foreach $fields end $this->addXXXColumnQuery $this->addYYYQuery() $this->addXXXColumnQuery() buildQuery
Jornadas Symfony  http://decharlas.uji.es/symfony Los Filtros addForeignKeyQuery $this->addYYYQuery() add ForeignKey Query add Enum Query add Text Query add Number Query add Boolean Query
Jornadas Symfony  http://decharlas.uji.es/symfony Los Filtros addForeignKeyQuery $this->addYYYQuery() add ForeignKey Query add Enum Query add Text Query add Number Query add Boolean Query
Jornadas Symfony  http://decharlas.uji.es/symfony Ejemplos
Jornadas Symfony  http://decharlas.uji.es/symfony Ejemplos  el modelo de datos
1.  Botón activar/desactivar un producto Jornadas Symfony  http://decharlas.uji.es/symfony Ejemplos
1.  Botón activar/desactivar un producto Jornadas Symfony  http://decharlas.uji.es/symfony Ejemplos Mensaje de notificación Nueva acción
1.  Botón activar/desactivar un producto Modificando la vista Jornadas Symfony  http://decharlas.uji.es/symfony Ejemplos list_td_actions.php
1.  Botón activar/desactivar un producto Modificando el controlador Jornadas Symfony  http://decharlas.uji.es/symfony Ejemplos actions.class.php
2.  Mostrar el número de productos y filtrar por ese campo Jornadas Symfony  http://decharlas.uji.es/symfony Ejemplos
2.  Mostrar el número de productos y filtrar por ese campo Jornadas Symfony  http://decharlas.uji.es/symfony Ejemplos
email:  javier.lopez@flai.es twitter:  @loalf blog:  http://www.loalf.com empresa:  http://www.flai.es Jornadas Symfony  http://decharlas.uji.es/symfony ¡Muchas gracias!
Publicidad

Más contenido relacionado

Similar a Symfony y Admin Generator (20)

Symfony: Domesticando las Vistas - decharlas
Symfony: Domesticando las Vistas - decharlasSymfony: Domesticando las Vistas - decharlas
Symfony: Domesticando las Vistas - decharlas
Decharlas
 
Symfony, cloud computing y webs scalables - decharlas
Symfony, cloud computing y webs scalables - decharlasSymfony, cloud computing y webs scalables - decharlas
Symfony, cloud computing y webs scalables - decharlas
Decharlas
 
Symfony, cloud computing y web escalables
Symfony, cloud computing y web escalablesSymfony, cloud computing y web escalables
Symfony, cloud computing y web escalables
Asier Marqués
 
Symfony en la gestión de un centro de computación avanzada
Symfony en la gestión de un centro de computación avanzadaSymfony en la gestión de un centro de computación avanzada
Symfony en la gestión de un centro de computación avanzada
César Suárez Ortega
 
Caso práctico II: symfony en la gestión de un centro de computación avanzada ...
Caso práctico II: symfony en la gestión de un centro de computación avanzada ...Caso práctico II: symfony en la gestión de un centro de computación avanzada ...
Caso práctico II: symfony en la gestión de un centro de computación avanzada ...
Decharlas
 
Caso práctico symfony: voota.es - decharlas
Caso práctico symfony: voota.es - decharlasCaso práctico symfony: voota.es - decharlas
Caso práctico symfony: voota.es - decharlas
Decharlas
 
Presentacion Sergio Viteri (Voota) decharlas/s
Presentacion Sergio Viteri (Voota) decharlas/sPresentacion Sergio Viteri (Voota) decharlas/s
Presentacion Sergio Viteri (Voota) decharlas/s
Sergio Viteri
 
Symfony plugins - No reinventes la rueda PLUGINS - Jornadas Castellón
Symfony plugins - No reinventes la rueda PLUGINS - Jornadas CastellónSymfony plugins - No reinventes la rueda PLUGINS - Jornadas Castellón
Symfony plugins - No reinventes la rueda PLUGINS - Jornadas Castellón
Jordi Llonch
 
Desymfony 2011 - Tutorial #1: Instalacion y primeros pasos
Desymfony 2011 - Tutorial #1: Instalacion y primeros pasosDesymfony 2011 - Tutorial #1: Instalacion y primeros pasos
Desymfony 2011 - Tutorial #1: Instalacion y primeros pasos
Javier Eguiluz
 
Symfony2, Jornadas Symfony
Symfony2, Jornadas SymfonySymfony2, Jornadas Symfony
Symfony2, Jornadas Symfony
Javier Eguiluz
 
Symfony 2 - decharlas 2010
Symfony 2 - decharlas 2010Symfony 2 - decharlas 2010
Symfony 2 - decharlas 2010
Decharlas
 
Adentrándonos al Framework Symfony
Adentrándonos al  Framework SymfonyAdentrándonos al  Framework Symfony
Adentrándonos al Framework Symfony
Rodrigo Miranda
 
Formularios y REST (deSymfony2013)
Formularios y REST (deSymfony2013)Formularios y REST (deSymfony2013)
Formularios y REST (deSymfony2013)
moisesgallego
 
Symfony2 Formacion y primeros pasos
Symfony2  Formacion y primeros pasosSymfony2  Formacion y primeros pasos
Symfony2 Formacion y primeros pasos
Soni BM
 
Symfony Parte 2
Symfony Parte 2Symfony Parte 2
Symfony Parte 2
Rodrigo Miranda
 
Introducción al framework Symfony
Introducción al framework SymfonyIntroducción al framework Symfony
Introducción al framework Symfony
Alejandro Hernández
 
Cómo domar SonataAdminBundle
Cómo domar SonataAdminBundleCómo domar SonataAdminBundle
Cómo domar SonataAdminBundle
Victoria Quirante Ruiz
 
CRUD básico con Symfony
CRUD básico con SymfonyCRUD básico con Symfony
CRUD básico con Symfony
Symfony Zaragoza
 
LARAVEL documentación y comandos para programar rapido
LARAVEL documentación y comandos para programar rapidoLARAVEL documentación y comandos para programar rapido
LARAVEL documentación y comandos para programar rapido
jamoresc2
 
Clase 5 controller
Clase 5 controllerClase 5 controller
Clase 5 controller
hydras_cs
 
Symfony: Domesticando las Vistas - decharlas
Symfony: Domesticando las Vistas - decharlasSymfony: Domesticando las Vistas - decharlas
Symfony: Domesticando las Vistas - decharlas
Decharlas
 
Symfony, cloud computing y webs scalables - decharlas
Symfony, cloud computing y webs scalables - decharlasSymfony, cloud computing y webs scalables - decharlas
Symfony, cloud computing y webs scalables - decharlas
Decharlas
 
Symfony, cloud computing y web escalables
Symfony, cloud computing y web escalablesSymfony, cloud computing y web escalables
Symfony, cloud computing y web escalables
Asier Marqués
 
Symfony en la gestión de un centro de computación avanzada
Symfony en la gestión de un centro de computación avanzadaSymfony en la gestión de un centro de computación avanzada
Symfony en la gestión de un centro de computación avanzada
César Suárez Ortega
 
Caso práctico II: symfony en la gestión de un centro de computación avanzada ...
Caso práctico II: symfony en la gestión de un centro de computación avanzada ...Caso práctico II: symfony en la gestión de un centro de computación avanzada ...
Caso práctico II: symfony en la gestión de un centro de computación avanzada ...
Decharlas
 
Caso práctico symfony: voota.es - decharlas
Caso práctico symfony: voota.es - decharlasCaso práctico symfony: voota.es - decharlas
Caso práctico symfony: voota.es - decharlas
Decharlas
 
Presentacion Sergio Viteri (Voota) decharlas/s
Presentacion Sergio Viteri (Voota) decharlas/sPresentacion Sergio Viteri (Voota) decharlas/s
Presentacion Sergio Viteri (Voota) decharlas/s
Sergio Viteri
 
Symfony plugins - No reinventes la rueda PLUGINS - Jornadas Castellón
Symfony plugins - No reinventes la rueda PLUGINS - Jornadas CastellónSymfony plugins - No reinventes la rueda PLUGINS - Jornadas Castellón
Symfony plugins - No reinventes la rueda PLUGINS - Jornadas Castellón
Jordi Llonch
 
Desymfony 2011 - Tutorial #1: Instalacion y primeros pasos
Desymfony 2011 - Tutorial #1: Instalacion y primeros pasosDesymfony 2011 - Tutorial #1: Instalacion y primeros pasos
Desymfony 2011 - Tutorial #1: Instalacion y primeros pasos
Javier Eguiluz
 
Symfony2, Jornadas Symfony
Symfony2, Jornadas SymfonySymfony2, Jornadas Symfony
Symfony2, Jornadas Symfony
Javier Eguiluz
 
Symfony 2 - decharlas 2010
Symfony 2 - decharlas 2010Symfony 2 - decharlas 2010
Symfony 2 - decharlas 2010
Decharlas
 
Adentrándonos al Framework Symfony
Adentrándonos al  Framework SymfonyAdentrándonos al  Framework Symfony
Adentrándonos al Framework Symfony
Rodrigo Miranda
 
Formularios y REST (deSymfony2013)
Formularios y REST (deSymfony2013)Formularios y REST (deSymfony2013)
Formularios y REST (deSymfony2013)
moisesgallego
 
Symfony2 Formacion y primeros pasos
Symfony2  Formacion y primeros pasosSymfony2  Formacion y primeros pasos
Symfony2 Formacion y primeros pasos
Soni BM
 
Introducción al framework Symfony
Introducción al framework SymfonyIntroducción al framework Symfony
Introducción al framework Symfony
Alejandro Hernández
 
LARAVEL documentación y comandos para programar rapido
LARAVEL documentación y comandos para programar rapidoLARAVEL documentación y comandos para programar rapido
LARAVEL documentación y comandos para programar rapido
jamoresc2
 
Clase 5 controller
Clase 5 controllerClase 5 controller
Clase 5 controller
hydras_cs
 

Más de Javier López (9)

Continous Delivering a PHP application
Continous Delivering a PHP applicationContinous Delivering a PHP application
Continous Delivering a PHP application
Javier López
 
One commit, one release. Continuously delivering a Symfony project.
One commit, one release. Continuously delivering a Symfony project.One commit, one release. Continuously delivering a Symfony project.
One commit, one release. Continuously delivering a Symfony project.
Javier López
 
PHP's FIG and PSRs
PHP's FIG and PSRsPHP's FIG and PSRs
PHP's FIG and PSRs
Javier López
 
Slides changes symfony23
Slides changes symfony23Slides changes symfony23
Slides changes symfony23
Javier López
 
Novedades en Symfony 2.3
Novedades en Symfony 2.3Novedades en Symfony 2.3
Novedades en Symfony 2.3
Javier López
 
Shifting gears with Composer
Shifting gears with ComposerShifting gears with Composer
Shifting gears with Composer
Javier López
 
Componentes, el arma secreta de Symfony2
Componentes, el arma secreta de Symfony2Componentes, el arma secreta de Symfony2
Componentes, el arma secreta de Symfony2
Javier López
 
Slides components en
Slides components enSlides components en
Slides components en
Javier López
 
Slides componentes
Slides componentesSlides componentes
Slides componentes
Javier López
 
Continous Delivering a PHP application
Continous Delivering a PHP applicationContinous Delivering a PHP application
Continous Delivering a PHP application
Javier López
 
One commit, one release. Continuously delivering a Symfony project.
One commit, one release. Continuously delivering a Symfony project.One commit, one release. Continuously delivering a Symfony project.
One commit, one release. Continuously delivering a Symfony project.
Javier López
 
Slides changes symfony23
Slides changes symfony23Slides changes symfony23
Slides changes symfony23
Javier López
 
Novedades en Symfony 2.3
Novedades en Symfony 2.3Novedades en Symfony 2.3
Novedades en Symfony 2.3
Javier López
 
Shifting gears with Composer
Shifting gears with ComposerShifting gears with Composer
Shifting gears with Composer
Javier López
 
Componentes, el arma secreta de Symfony2
Componentes, el arma secreta de Symfony2Componentes, el arma secreta de Symfony2
Componentes, el arma secreta de Symfony2
Javier López
 
Slides components en
Slides components enSlides components en
Slides components en
Javier López
 
Publicidad

Último (20)

Cavada PROCESO DE INTEGRACIÓN DE LA COLONIA FLAMENCA 01.pdf
Cavada  PROCESO DE INTEGRACIÓN DE LA COLONIA FLAMENCA 01.pdfCavada  PROCESO DE INTEGRACIÓN DE LA COLONIA FLAMENCA 01.pdf
Cavada PROCESO DE INTEGRACIÓN DE LA COLONIA FLAMENCA 01.pdf
brueghel
 
Redes industriales yde instrumentacion.pptx
Redes industriales yde instrumentacion.pptxRedes industriales yde instrumentacion.pptx
Redes industriales yde instrumentacion.pptx
TeresitaXalapa
 
ES Artificial Intelligence by Slidesgo.pptx
ES Artificial Intelligence by Slidesgo.pptxES Artificial Intelligence by Slidesgo.pptx
ES Artificial Intelligence by Slidesgo.pptx
fraimelimarinez
 
Registro ABA instrutivo para su instalacion
Registro ABA instrutivo para su instalacionRegistro ABA instrutivo para su instalacion
Registro ABA instrutivo para su instalacion
bomeza
 
Análisis de pagina web. Caso: D&D Inn Tibana Caracas, Catalonia Hotels & Res...
Análisis de pagina web.  Caso: D&D Inn Tibana Caracas, Catalonia Hotels & Res...Análisis de pagina web.  Caso: D&D Inn Tibana Caracas, Catalonia Hotels & Res...
Análisis de pagina web. Caso: D&D Inn Tibana Caracas, Catalonia Hotels & Res...
alondramedina2025
 
taller 5 ciberseguridad habilidades digitales
taller 5 ciberseguridad habilidades digitalestaller 5 ciberseguridad habilidades digitales
taller 5 ciberseguridad habilidades digitales
juancardenaslosada
 
Recurso educativo digital videos educativos
Recurso educativo digital  videos educativosRecurso educativo digital  videos educativos
Recurso educativo digital videos educativos
KARLAKARINABALDARRAG
 
Riesgos Ergonómicos y Riesgos Psicosociales
Riesgos Ergonómicos y Riesgos PsicosocialesRiesgos Ergonómicos y Riesgos Psicosociales
Riesgos Ergonómicos y Riesgos Psicosociales
AimeeCoronel2
 
SISTEMAS OPERATIVOS, LA MAGIA DE LA TECNOLOGIA
SISTEMAS OPERATIVOS, LA MAGIA DE LA TECNOLOGIASISTEMAS OPERATIVOS, LA MAGIA DE LA TECNOLOGIA
SISTEMAS OPERATIVOS, LA MAGIA DE LA TECNOLOGIA
IVAN CAMPUZANO
 
Plataforma Virtual E-Learning MOODLE.pdf
Plataforma Virtual E-Learning MOODLE.pdfPlataforma Virtual E-Learning MOODLE.pdf
Plataforma Virtual E-Learning MOODLE.pdf
GINGER YULISA ZAMBRANO NOBOA
 
SeguridadCookiesInformacionLegalPresentación.pdf
SeguridadCookiesInformacionLegalPresentación.pdfSeguridadCookiesInformacionLegalPresentación.pdf
SeguridadCookiesInformacionLegalPresentación.pdf
SamuelMancebo2
 
Diseño de una red de comunicaciones en una vivienda.pptx
Diseño de una red de comunicaciones en una vivienda.pptxDiseño de una red de comunicaciones en una vivienda.pptx
Diseño de una red de comunicaciones en una vivienda.pptx
dvdgrcbd
 
MÓDULO I. (conceptos generales de higiene ocupacional)
MÓDULO I. (conceptos generales de higiene ocupacional)MÓDULO I. (conceptos generales de higiene ocupacional)
MÓDULO I. (conceptos generales de higiene ocupacional)
AimeeCoronel2
 
presentacion-baterias-y-acumuladores-redox.pptx
presentacion-baterias-y-acumuladores-redox.pptxpresentacion-baterias-y-acumuladores-redox.pptx
presentacion-baterias-y-acumuladores-redox.pptx
CharlesBergeyre1
 
StacksTecnológicosInformaciónPresentación.pdf
StacksTecnológicosInformaciónPresentación.pdfStacksTecnológicosInformaciónPresentación.pdf
StacksTecnológicosInformaciónPresentación.pdf
SamuelMancebo2
 
EDICIÓN DE VIDEO. CLASE DE TICS II. UNIREU
EDICIÓN DE VIDEO. CLASE DE TICS II. UNIREUEDICIÓN DE VIDEO. CLASE DE TICS II. UNIREU
EDICIÓN DE VIDEO. CLASE DE TICS II. UNIREU
AndrsCastro58
 
Habilidades digitales Taller Ciberseguridad
Habilidades digitales Taller CiberseguridadHabilidades digitales Taller Ciberseguridad
Habilidades digitales Taller Ciberseguridad
juandavidmahechafier
 
Windows 11 25H2 PPTX file: PDF y PPTX.pptx
Windows 11 25H2 PPTX file: PDF y PPTX.pptxWindows 11 25H2 PPTX file: PDF y PPTX.pptx
Windows 11 25H2 PPTX file: PDF y PPTX.pptx
carloscubillos36
 
Cavada PROCESO DE INTEGRACIÓN DE LA COLONIA FLAMENCA 02.pdf
Cavada  PROCESO DE INTEGRACIÓN DE LA COLONIA FLAMENCA 02.pdfCavada  PROCESO DE INTEGRACIÓN DE LA COLONIA FLAMENCA 02.pdf
Cavada PROCESO DE INTEGRACIÓN DE LA COLONIA FLAMENCA 02.pdf
brueghel
 
Windows 12: El futuro PPTX and PDF file.pptx
Windows 12: El futuro PPTX and PDF file.pptxWindows 12: El futuro PPTX and PDF file.pptx
Windows 12: El futuro PPTX and PDF file.pptx
carloscubillos36
 
Cavada PROCESO DE INTEGRACIÓN DE LA COLONIA FLAMENCA 01.pdf
Cavada  PROCESO DE INTEGRACIÓN DE LA COLONIA FLAMENCA 01.pdfCavada  PROCESO DE INTEGRACIÓN DE LA COLONIA FLAMENCA 01.pdf
Cavada PROCESO DE INTEGRACIÓN DE LA COLONIA FLAMENCA 01.pdf
brueghel
 
Redes industriales yde instrumentacion.pptx
Redes industriales yde instrumentacion.pptxRedes industriales yde instrumentacion.pptx
Redes industriales yde instrumentacion.pptx
TeresitaXalapa
 
ES Artificial Intelligence by Slidesgo.pptx
ES Artificial Intelligence by Slidesgo.pptxES Artificial Intelligence by Slidesgo.pptx
ES Artificial Intelligence by Slidesgo.pptx
fraimelimarinez
 
Registro ABA instrutivo para su instalacion
Registro ABA instrutivo para su instalacionRegistro ABA instrutivo para su instalacion
Registro ABA instrutivo para su instalacion
bomeza
 
Análisis de pagina web. Caso: D&D Inn Tibana Caracas, Catalonia Hotels & Res...
Análisis de pagina web.  Caso: D&D Inn Tibana Caracas, Catalonia Hotels & Res...Análisis de pagina web.  Caso: D&D Inn Tibana Caracas, Catalonia Hotels & Res...
Análisis de pagina web. Caso: D&D Inn Tibana Caracas, Catalonia Hotels & Res...
alondramedina2025
 
taller 5 ciberseguridad habilidades digitales
taller 5 ciberseguridad habilidades digitalestaller 5 ciberseguridad habilidades digitales
taller 5 ciberseguridad habilidades digitales
juancardenaslosada
 
Recurso educativo digital videos educativos
Recurso educativo digital  videos educativosRecurso educativo digital  videos educativos
Recurso educativo digital videos educativos
KARLAKARINABALDARRAG
 
Riesgos Ergonómicos y Riesgos Psicosociales
Riesgos Ergonómicos y Riesgos PsicosocialesRiesgos Ergonómicos y Riesgos Psicosociales
Riesgos Ergonómicos y Riesgos Psicosociales
AimeeCoronel2
 
SISTEMAS OPERATIVOS, LA MAGIA DE LA TECNOLOGIA
SISTEMAS OPERATIVOS, LA MAGIA DE LA TECNOLOGIASISTEMAS OPERATIVOS, LA MAGIA DE LA TECNOLOGIA
SISTEMAS OPERATIVOS, LA MAGIA DE LA TECNOLOGIA
IVAN CAMPUZANO
 
SeguridadCookiesInformacionLegalPresentación.pdf
SeguridadCookiesInformacionLegalPresentación.pdfSeguridadCookiesInformacionLegalPresentación.pdf
SeguridadCookiesInformacionLegalPresentación.pdf
SamuelMancebo2
 
Diseño de una red de comunicaciones en una vivienda.pptx
Diseño de una red de comunicaciones en una vivienda.pptxDiseño de una red de comunicaciones en una vivienda.pptx
Diseño de una red de comunicaciones en una vivienda.pptx
dvdgrcbd
 
MÓDULO I. (conceptos generales de higiene ocupacional)
MÓDULO I. (conceptos generales de higiene ocupacional)MÓDULO I. (conceptos generales de higiene ocupacional)
MÓDULO I. (conceptos generales de higiene ocupacional)
AimeeCoronel2
 
presentacion-baterias-y-acumuladores-redox.pptx
presentacion-baterias-y-acumuladores-redox.pptxpresentacion-baterias-y-acumuladores-redox.pptx
presentacion-baterias-y-acumuladores-redox.pptx
CharlesBergeyre1
 
StacksTecnológicosInformaciónPresentación.pdf
StacksTecnológicosInformaciónPresentación.pdfStacksTecnológicosInformaciónPresentación.pdf
StacksTecnológicosInformaciónPresentación.pdf
SamuelMancebo2
 
EDICIÓN DE VIDEO. CLASE DE TICS II. UNIREU
EDICIÓN DE VIDEO. CLASE DE TICS II. UNIREUEDICIÓN DE VIDEO. CLASE DE TICS II. UNIREU
EDICIÓN DE VIDEO. CLASE DE TICS II. UNIREU
AndrsCastro58
 
Habilidades digitales Taller Ciberseguridad
Habilidades digitales Taller CiberseguridadHabilidades digitales Taller Ciberseguridad
Habilidades digitales Taller Ciberseguridad
juandavidmahechafier
 
Windows 11 25H2 PPTX file: PDF y PPTX.pptx
Windows 11 25H2 PPTX file: PDF y PPTX.pptxWindows 11 25H2 PPTX file: PDF y PPTX.pptx
Windows 11 25H2 PPTX file: PDF y PPTX.pptx
carloscubillos36
 
Cavada PROCESO DE INTEGRACIÓN DE LA COLONIA FLAMENCA 02.pdf
Cavada  PROCESO DE INTEGRACIÓN DE LA COLONIA FLAMENCA 02.pdfCavada  PROCESO DE INTEGRACIÓN DE LA COLONIA FLAMENCA 02.pdf
Cavada PROCESO DE INTEGRACIÓN DE LA COLONIA FLAMENCA 02.pdf
brueghel
 
Windows 12: El futuro PPTX and PDF file.pptx
Windows 12: El futuro PPTX and PDF file.pptxWindows 12: El futuro PPTX and PDF file.pptx
Windows 12: El futuro PPTX and PDF file.pptx
carloscubillos36
 
Publicidad

Symfony y Admin Generator

  • 1. Castellón - 5 y 6 de Julio 2010 – Universitat Jaume I organizan patrocinan colaboran Jornadas Symfony 5 y 6 de julio 2010 Universitat Jaume I, Castellón http://decharlas.uji.es/symfony
  • 2. Admin Generator Un gran poder conlleva una gran responsabilidad Javier López, flai.es Jornadas Symfony 5 y 6 de julio 2010 Universitat Jaume I, Castellón http://decharlas.uji.es/symfony
  • 3. http://www.flai.es Jornadas Symfony http://decharlas.uji.es/symfony sesión patrocinada por
  • 4. Muchas aplicaciones son sólo una interfaz para la BBDD Proceso muy repetitivo y siempre igual REATE: nuevo ETRIEVE: listar PDATE: actualizar ELETE: eliminar C R U D Jornadas Symfony http://decharlas.uji.es/symfony ¿CRUD?
  • 5. Symfony ofrece dos soluciones Jornadas Symfony http://decharlas.uji.es/symfony God bless symfony CRUD Generator Admin Generator symfony doctrine:generate-module symfony doctrine:generate-admin
  • 6. Symfony ofrece dos soluciones Jornadas Symfony http://decharlas.uji.es/symfony God bless symfony CRUD Generator Admin Generator symfony doctrine:generate-module symfony doctrine:generate-admin Killer Feature
  • 7. Jornadas Symfony http://decharlas.uji.es/symfony pero, ¿qué es?
  • 8. Jornadas Symfony http://decharlas.uji.es/symfony Un ejemplo
  • 9. Admin generator = generator.yml Jornadas Symfony http://decharlas.uji.es/symfony Admin Generator
  • 10. Admin generator = generator.yml Jornadas Symfony http://decharlas.uji.es/symfony Admin Generator
  • 11. Jornadas Symfony http://decharlas.uji.es/symfony Admin Generator generator.yml forms filters models actions partials generator
  • 12. Jornadas Symfony http://decharlas.uji.es/symfony Cómo funciona
  • 13. /apps/backend/modules /cache/backend/dev/modules Jornadas Symfony http://decharlas.uji.es/symfony Cómo funciona
  • 14. Jornadas Symfony http://decharlas.uji.es/symfony Cómo funciona xxxGeneratorConfiguration generator.yml sfDoctrineGenerator generator: class: sfDoctrineGenerator param:[] generator: config: fields: [] list: [] edit: [] ...
  • 15. /plugins/data/generator/sfDoctrineModule/admin /SKELETON /TEMPLATE 1. se ejecuta php 2. [?php ?] => <?php ?> Sustitución ##variable## Jornadas Symfony http://decharlas.uji.es/symfony Cómo funciona sfDoctrineGenerator Módulo en /app/modules/xxx Módulo en /cache/modules/autoxxx COPIADO COMPILADO COPIADO
  • 16. /SKELETON /TEMPLATE Jornadas Symfony http://decharlas.uji.es/symfony Cómo funciona
  • 17. /SKELETON /TEMPLATE Jornadas Symfony http://decharlas.uji.es/symfony Cómo funciona
  • 18. /SKELETON /TEMPLATE Jornadas Symfony http://decharlas.uji.es/symfony Cómo funciona
  • 19. /lib/data/generator/sfDoctrineModule/mitema /SKELETON /TEMPLATE 1. se ejecuta php 2. [?php ?] => <?php ?> Sustitución ##variable## Jornadas Symfony http://decharlas.uji.es/symfony Tu propio “admin-generator” sfDoctrineGenerator Módulo en /app/modules/xxx Módulo en /cache/modules/autoxxx COPIADO COMPILADO COPIADO generator: param: theme: mitema
  • 20. El listado La edición Jornadas Symfony http://decharlas.uji.es/symfony Las acciones
  • 21. indexSuccess.php Jornadas Symfony http://decharlas.uji.es/symfony El listado desde la vista
  • 22. indexSuccess.php Jornadas Symfony http://decharlas.uji.es/symfony El listado desde la vista _list_header
  • 23. indexSuccess.php Jornadas Symfony http://decharlas.uji.es/symfony El listado desde la vista _flashes
  • 24. indexSuccess.php Jornadas Symfony http://decharlas.uji.es/symfony El listado desde la vista _filters
  • 25. indexSuccess.php Jornadas Symfony http://decharlas.uji.es/symfony El listado desde la vista _list batch actions
  • 26. indexSuccess.php Jornadas Symfony http://decharlas.uji.es/symfony El listado desde la vista _list actions
  • 27. indexSuccess.php Jornadas Symfony http://decharlas.uji.es/symfony El listado desde la vista _list actions
  • 28. indexSuccess.php Jornadas Symfony http://decharlas.uji.es/symfony El listado desde la vista _list
  • 29. indexSuccess.php Jornadas Symfony http://decharlas.uji.es/symfony El listado desde la vista _list
  • 30. _list.php Jornadas Symfony http://decharlas.uji.es/symfony El listado desde la vista _list_th_[tabular|stacked ]
  • 31. _list.php Jornadas Symfony http://decharlas.uji.es/symfony El listado desde la vista _list_td_[tabular|stacked ]
  • 32. _list.php Jornadas Symfony http://decharlas.uji.es/symfony El listado desde la vista _list_td _actions
  • 33. _list.php Jornadas Symfony http://decharlas.uji.es/symfony El listado desde la vista _pagination
  • 34. actions.class.php Jornadas Symfony http://decharlas.uji.es/symfony El listado desde la acción
  • 35. Jornadas Symfony http://decharlas.uji.es/symfony El listado construyendo la query $query sf_user /admin_module product.sort sf_user /admin_module product.filter ProductFormFilter buildQuery configuration defaultFilters
  • 36. actions.class.php Jornadas Symfony http://decharlas.uji.es/symfony El listado desde la acción
  • 37. editSuccess.php newSucccess.php Jornadas Symfony http://decharlas.uji.es/symfony La edición desde la vista _form_header
  • 38. editSuccess.php newSucccess.php Jornadas Symfony http://decharlas.uji.es/symfony La edición desde la vista _flashes
  • 39. editSuccess.php newSucccess.php Jornadas Symfony http://decharlas.uji.es/symfony La edición desde la vista _form_footer
  • 40. editSuccess.php newSucccess.php Jornadas Symfony http://decharlas.uji.es/symfony La edición desde la vista _form
  • 41. editSuccess.php newSucccess.php Jornadas Symfony http://decharlas.uji.es/symfony La edición desde la vista _form_actions
  • 42. Jornadas Symfony http://decharlas.uji.es/symfony La edición desde la acción GET POST GET PUT
  • 43. Nuevo framework de formulario a partir de sf 1.0 La lógica depende del formulario no de la acción, no depende del generador José Antonio Pío os contará como domesticarlos mañana Jornadas Symfony http://decharlas.uji.es/symfony La edición desde la acción
  • 44. Jornadas Symfony http://decharlas.uji.es/symfony Filtros
  • 45. Formularios muy especiales XXX = field YYY = type Jornadas Symfony http://decharlas.uji.es/symfony Los Filtros TableMethod foreach $fields end $this->addXXXColumnQuery $this->addYYYQuery() $this->addXXXColumnQuery() buildQuery
  • 46. Jornadas Symfony http://decharlas.uji.es/symfony Los Filtros addForeignKeyQuery $this->addYYYQuery() add ForeignKey Query add Enum Query add Text Query add Number Query add Boolean Query
  • 47. Jornadas Symfony http://decharlas.uji.es/symfony Los Filtros addForeignKeyQuery $this->addYYYQuery() add ForeignKey Query add Enum Query add Text Query add Number Query add Boolean Query
  • 48. Jornadas Symfony http://decharlas.uji.es/symfony Ejemplos
  • 49. Jornadas Symfony http://decharlas.uji.es/symfony Ejemplos el modelo de datos
  • 50. 1. Botón activar/desactivar un producto Jornadas Symfony http://decharlas.uji.es/symfony Ejemplos
  • 51. 1. Botón activar/desactivar un producto Jornadas Symfony http://decharlas.uji.es/symfony Ejemplos Mensaje de notificación Nueva acción
  • 52. 1. Botón activar/desactivar un producto Modificando la vista Jornadas Symfony http://decharlas.uji.es/symfony Ejemplos list_td_actions.php
  • 53. 1. Botón activar/desactivar un producto Modificando el controlador Jornadas Symfony http://decharlas.uji.es/symfony Ejemplos actions.class.php
  • 54. 2. Mostrar el número de productos y filtrar por ese campo Jornadas Symfony http://decharlas.uji.es/symfony Ejemplos
  • 55. 2. Mostrar el número de productos y filtrar por ese campo Jornadas Symfony http://decharlas.uji.es/symfony Ejemplos
  • 56. email: [email protected] twitter: @loalf blog: http://www.loalf.com empresa: http://www.flai.es Jornadas Symfony http://decharlas.uji.es/symfony ¡Muchas gracias!

Notas del editor

  • #5: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #6: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #7: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #8: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #9: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #10: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #11: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #12: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #13: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #14: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #15: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #16: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #17: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #18: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #19: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #20: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #21: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #22: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #23: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #24: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #25: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #26: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #27: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #28: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #29: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #30: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #31: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #32: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #33: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #34: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #35: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #36: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #37: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #38: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #39: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #40: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #41: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #42: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #43: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #44: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #45: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #46: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #47: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #48: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #49: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #50: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #51: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #52: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #53: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #54: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #55: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #56: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com
  • #57: Mejoras que intenta aportar: Es mejor utilizar un pie de página en vez de una cabecera, para dejar libre la parte superior de cada transparencia. El pie de página incluye una vez más publicidad de decharlas.com