Symfony y Admin Generator
-
Upload
javier-lopez -
Category
Technology
-
view
5.567 -
download
0
Transcript of Symfony y Admin Generator
Diapositiva 1
Castelln - 5 y 6 de Julio 2010 Universitat Jaume I
organizan
patrocinan
colaboran
Jornadas Symfony
5 y 6 de julio 2010Universitat Jaume I, Castelln
http://decharlas.uji.es/symfony
Admin GeneratorUn gran poder conlleva una gran responsabilidad
Javier Lpez, flai.es
Jornadas Symfony
5 y 6 de julio 2010Universitat Jaume I, Castelln
http://decharlas.uji.es/symfony
http://www.flai.es
Jornadas Symfony http://decharlas.uji.es/symfony
sesin patrocinada por
Jornadas Symfony http://decharlas.uji.es/symfony
CRUD?
Muchas aplicaciones son slo una interfaz para la BBDD
Proceso muy repetitivo y siempre igual
REATE: nuevo
ETRIEVE: listar
PDATE: actualizar
ELETE: eliminar
C
R
U
D
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
God bless symfony
Symfony ofrece dos soluciones
CRUDGeneratorAdminGeneratorsymfony doctrine:generate-modulesymfony doctrine:generate-admin
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
God bless symfony
Symfony ofrece dos soluciones
CRUDGeneratorAdminGeneratorsymfony doctrine:generate-modulesymfony doctrine:generate-adminKiller Feature
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
pero, qu es?
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
Un ejemplo
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
Admin Generator
Admin generator = generator.yml
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
Admin Generator
Admin generator = generator.yml
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
Admin Generator
generator.ymlformsfiltersmodelsactionspartialsgenerator
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
Cmo funciona
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
Cmo funciona
/apps/backend/modules
/cache/backend/dev/modules
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
Cmo funciona
xxxGeneratorConfigurationgenerator.yml
sfDoctrineGenerator
generator: class: sfDoctrineGenerator param:[]generator: config: fields: [] list: [] edit: [] ...
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
Cmo funciona
sfDoctrineGeneratorMdulo en /app/modules/xxxMdulo en /cache/modules/autoxxx
/plugins/data/generator/sfDoctrineModule/admin
COPIADO/SKELETON
COMPILADO/TEMPLATE
1. se ejecuta php2. [?php ?] =>
COPIADOSustitucin ##variable##
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
Cmo funciona
/SKELETON
/TEMPLATE
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
Cmo funciona
/SKELETON
/TEMPLATE
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
Cmo funciona
/SKELETON
/TEMPLATE
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
Tu propio admin-generator
sfDoctrineGeneratorMdulo en /app/modules/xxxMdulo en /cache/modules/autoxxx
/lib/data/generator/sfDoctrineModule/mitema
COPIADO/SKELETON
COMPILADO/TEMPLATE
1. se ejecuta php2. [?php ?] =>
COPIADOSustitucin ##variable##
generator: param: theme: mitema
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
Las acciones
El listadoLa edicin
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
El listado desde la vista
indexSuccess.php
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
El listado desde la vista
indexSuccess.php
_list_header
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
El listado desde la vista
indexSuccess.php
_flashes
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
El listado desde la vista
indexSuccess.php
_filters
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
El listado desde la vista
indexSuccess.php
_list batch actions
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
El listado desde la vista
indexSuccess.php
_list actions
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
El listado desde la vista
indexSuccess.php
_list actions
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
El listado desde la vista
indexSuccess.php
_list
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
El listado desde la vista
indexSuccess.php
_list
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
El listado desde la vista
_list.php
_list_th_[tabular|stacked]
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
El listado desde la vista
_list.php
_list_td_[tabular|stacked]
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
El listado desde la vista
_list.php
_list_td_actions
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
El listado desde la vista
_list.php
_pagination
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
El listado desde la accin
actions.class.php
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
El listado construyendo la query
$querysf_user/admin_module product.sortsf_user/admin_module product.filterProductFormFilterbuildQuery
configurationdefaultFilters
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
El listado desde la accin
actions.class.php
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
La edicin desde la vista
editSuccess.phpnewSucccess.php
_form_header
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
La edicin desde la vista
editSuccess.phpnewSucccess.php
_flashes
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
La edicin desde la vista
editSuccess.phpnewSucccess.php
_form_footer
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
La edicin desde la vista
editSuccess.phpnewSucccess.php
_form
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
La edicin desde la vista
editSuccess.phpnewSucccess.php
_form_actions
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
La edicin desde la accin
GETPOSTGETPUT
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
La edicin desde la accin
Nuevo framework de formulario a partir de sf 1.0
La lgica depende del formulario no de la accin, no dependedel generador
Jos Antonio Po os contar como domesticarlos maana
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
Filtros
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
Los Filtros
Formularios muy especiales
TableMethodforeach $fieldsend$this->addXXXColumnQuery$this->addYYYQuery()
$this->addXXXColumnQuery()buildQueryXXX = fieldYYY = type
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
Los Filtros
addForeignKeyQuery$this->addYYYQuery()
addForeignKeyQueryaddEnumQueryaddTextQueryaddNumberQueryaddBooleanQuery
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
Los Filtros
addForeignKeyQuery$this->addYYYQuery()
addForeignKeyQueryaddEnumQueryaddTextQueryaddNumberQueryaddBooleanQuery
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
Ejemplos
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
Ejemplos el modelo de datos
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
Ejemplos
1. Botn activar/desactivar un producto
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
Ejemplos
1. Botn activar/desactivar un producto
Mensaje de notificacin
Nueva accin
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
Ejemplos
1. Botn activar/desactivar un producto
Modificando la vista
list_td_actions.php
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
Ejemplos
1. Botn activar/desactivar un producto
Modificando el controlador
actions.class.php
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
Ejemplos
2. Mostrar el nmero de productos y filtrar por ese campo
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
Ejemplos
2. Mostrar el nmero de productos y filtrar por ese campo
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com
Jornadas Symfony http://decharlas.uji.es/symfony
Muchas gracias!
email: [email protected]
twitter: @loalf
blog: http://www.loalf.com
empresa: http://www.flai.es
Mejoras que intenta aportar:
Es mejor utilizar un pie de pgina en vez de una cabecera, para dejar libre la parte superior de cada transparencia.
El pie de pgina incluye una vez ms publicidad de decharlas.com