SlideShare a Scribd company logo
1 of 101
Download to read offline
Por qué
Python community 2010




             http://www.flickr.com/photos/27734462@N00/4456118597
PHP community, 2010




           http://www.flickr.com/photos/27734462@N00/4456830956
http://www.flickr.com/photos/57768341@N00/3387704295
Symfony2 al rescate




              http://www.flickr.com/photos/18597080@N04/2566928348
Un entorno común




            http://www.flickr.com/photos/61414741@N00/77346889Text
http://www.flickr.com/photos/10209031@N08/4542049217
http://www.flickr.com/photos/38158467@N00/83109701
Text
Los componentes de
   Symfony2 son
     genéricos
 pero Internet está
llena de contenido
Los componentes de
   Symfony2 son
     genéricos
 pero Internet está
llena de contenido
Drupal está muy bien

 si eres un usuario
Drupal está muy bien

 si eres un usuario
Vamos a intentarlo
¿TinyMCE y a correr?
No, a lo loco
Queremos...
Queremos...
Estructura en árbol
Queremos...
Estructura en árbol

Documentos sin
estructura
Queremos...
Estructura en árbol

Documentos sin
estructura

Querys para el árbol
Queremos...
Estructura en árbol

Documentos sin
estructura

Querys para el árbol

Fulltext
Queremos...
Estructura en árbol

Documentos sin
estructura

Querys para el árbol

Fulltext

Usable en hosting
compartido...
Queremos...
Estructura en árbol

Documentos sin
estructura

Querys para el árbol

Fulltext

Usable en hosting
compartido...

...pero escalable
Queremos...
Estructura en árbol

Documentos sin
estructura

Querys para el árbol

Fulltext

Usable en hosting
compartido...

...pero escalable

Que sea un estándar
Queremos...
Estructura en árbol

Documentos sin
estructura

Querys para el árbol

Fulltext

Usable en hosting
compartido...

...pero escalable

Que sea un estándar

...y tenga varias
implementaciones!
Queremos...
Estructura en árbol    Versionable

Documentos sin
estructura

Querys para el árbol

Fulltext

Usable en hosting
compartido...

...pero escalable

Que sea un estándar

...y tenga varias
implementaciones!
Queremos...
Estructura en árbol    Versionable

Documentos sin         Traducible
estructura

Querys para el árbol

Fulltext

Usable en hosting
compartido...

...pero escalable

Que sea un estándar

...y tenga varias
implementaciones!
Queremos...
Estructura en árbol    Versionable

Documentos sin         Traducible
estructura
                       Rutas editables
Querys para el árbol

Fulltext

Usable en hosting
compartido...

...pero escalable

Que sea un estándar

...y tenga varias
implementaciones!
Queremos...
Estructura en árbol    Versionable

Documentos sin         Traducible
estructura
                       Rutas editables
Querys para el árbol
                       Miles de ellas
Fulltext

Usable en hosting
compartido...

...pero escalable

Que sea un estándar

...y tenga varias
implementaciones!
Queremos...
Estructura en árbol    Versionable

Documentos sin         Traducible
estructura
                       Rutas editables
Querys para el árbol
                       Miles de ellas
Fulltext
                       Menús
Usable en hosting
compartido...

...pero escalable

Que sea un estándar

...y tenga varias
implementaciones!
Queremos...
Estructura en árbol    Versionable

Documentos sin         Traducible
estructura
                       Rutas editables
Querys para el árbol
                       Miles de ellas
Fulltext
                       Menús
Usable en hosting
compartido...          ACL
...pero escalable

Que sea un estándar

...y tenga varias
implementaciones!
Queremos...
Estructura en árbol    Versionable

Documentos sin         Traducible
estructura
                       Rutas editables
Querys para el árbol
                       Miles de ellas
Fulltext
                       Menús
Usable en hosting
compartido...          ACL
...pero escalable      Admin panel
Que sea un estándar

...y tenga varias
implementaciones!
Queremos...
Estructura en árbol    Versionable

Documentos sin         Traducible
estructura
                       Rutas editables
Querys para el árbol
                       Miles de ellas
Fulltext
                       Menús
Usable en hosting
compartido...          ACL
...pero escalable      Admin panel
Que sea un estándar    Editable inline
...y tenga varias
implementaciones!
Queremos...
Estructura en árbol    Versionable

Documentos sin         Traducible
estructura
                       Rutas editables
Querys para el árbol
                       Miles de ellas
Fulltext
                       Menús
Usable en hosting
compartido...          ACL
...pero escalable      Admin panel
Que sea un estándar    Editable inline
...y tenga varias      Que no haga falta
implementaciones!      saberlo todo
¿Cuánto tardaremos en hacer esa
           animalada?




                     http://www.flickr.com/photos/83476873@N00/110993877
Ya está hecha
    (O casi)
Componentes
PHPCR
el estándar
API estándar


JCR “phpizado”
Estructura
Estructura
Estructura
Estructura
Estructura
paths
Estructura
node
paths types
Estructura
mixins
node
paths types
Estructura
mixins
node
paths types
propiedades


     {
         title
         text
         jcr:created
         phpcr:class
STRING    BINARY
URL       DATE
BOOLEAN   NAME
LONG      PATH
DOUBLE    WEAKREFERENCE
DECIMAL   REFERENCE
Tipos de propiedades

STRING    BINARY
URL       DATE
BOOLEAN   NAME
LONG      PATH
DOUBLE    WEAKREFERENCE
DECIMAL   REFERENCE
Conexión


use JackalopeRepositoryFactoryJackrabbit as Factory;

$parameters = array(
    'jackalope.jackrabbit_uri'
        => 'http://localhost:8080/server'
);

$repository = Factory::getRepository($parameters);

$creds = new PHPCRSimpleCredentials('user','pw');
$session = $repository->login($creds, 'default');
CRUD


// Crear
$root = $session->getRootNode();
$node = $root->addNode('test', 'nt:unstructured');
// Leer
$node = $session->getNode('/test');
// Actualizar
$node->setProperty('prop', 'value');
// Eliminar
$node->remove();
Guardar las modificaciones




      $session->save();
Obtener hijos




foreach ($node as $child) {
    var_dump($child->getName());
}
Obtener hijos filtrando




foreach ($node->getNodes('di*') as $child) {
    var_dump($child->getName());
}
Consultas en SQL2

$qm = $workspace->getQueryManager();

$sql = "SELECT * FROM [nt:unstructured]
    WHERE [nt:unstructured].type = 'nav'
    AND ISDESCENDANTNODE('/some/path')
    ORDER BY score, [nt:unstructured].title";
$query = $qm->createQuery($sql, 'JCR-SQL2');
$query->setLimit($limit);
$query->setOffset($offset);
$queryResult = $query->execute();

foreach ($queryResult->getNodes() as $node) {
    var_dump($node->getPath());
}
Consultas con QOM
$qm = $workspace->getQueryManager();
$factory = $qm->getQOMFactory();

// SELECT * FROM nt:file INNER JOIN nt:folder ON
ISCHILDNODE(child, parent)
$factory->createQuery(
    $factory->join(
        $factory->selector('nt:file'),
        $factory->selector('nt:folder'),
        Constants::JCR_JOIN_TYPE_INNER,
        $factory->childNodeJoinCondition('child',
'parent')),
    null,
    array(),
    array());
Consultas con interfaz fluida


$qm = $workspace->getQueryManager();
$factory = $qm->getQOMFactory();

// SELECT * FROM nt:unstructured WHERE name NOT IS
NULL
$qb = new QueryBuilder($factory);
$qb->select($factory->selector('nt:unstructured'))
   ->where($factory->propertyExistence('name'))
   ->setFirstResult(10)
   ->setMaxResults(10)
   ->execute();
Implementaciones

   (estándar)
Doctrine
PHPCR-ODM
el object document mapper
Documentos
namespace Foo;

use DoctrineODMPHPCRMapping as PHPCR;
/** @PHPCRDocument */
class Bar
{
  /** @PHPCRId */
  public $id;

    /**
     * @PHPCRParentDocument
     */
    public $parent;

    /** @PHPCRNodename */
    public $nodename;

    /** @PHPCRString */
    public $text;

}
Referencias
/**
 * Hijo con nombre "el-logo"
 * @PHPCRChild(name="el-logo")
 */
public $logo;

/**
 * Hijos que empiecen con "a"
 * @PHPCRChildren(filter="a*")
 */
public $children;

/** @PHPCRReferenceOne */
public $reference;

/** @PHPCRReferrers */
public $referrers;
CRUD
Ya conoces la
   interfaz
CRUD
Ya conoces la
   interfaz
Versiones con ODM
// @Document(versionable="simple")
$document = $dm->find(null, $id);

// crear versión
$dm->checkpoint($document);

// obtener últimas dos versiones
$history = $dm->getAllLinearVersions($document, 2);

// obtener versión
$version = reset($history);
$pre = $dm->findVersionByName(null, $id, $version['versionname']);
echo $pre->text;

// restablecer versión
$dm->restoreVersion($pre, true);

//eliminar versión
$dm->deleteVersion($pre2);
Las versiones tienen
    mucha tela
  Pero si la ignoras no te hace daño
Las versiones tienen
    mucha tela
  Pero si la ignoras no te hace daño
Traducciones con
     ODM
Documentos multilingües
/** @PHPCRDocument(translator="attribute") */
class Article
{
    /**
     * The language this document currently is in
     * @PHPCRLocale
     */
    public $locale;

    /**
     * Untranslated property
     * @PHPCRDate
     */
    public $publishDate;

    /**
     * Translated property
     * @PHPCRString(translated=true)
     */

    public $topic;

    /**
     * Language specific image
     * @PHPCRBinary(translated=true)
     */
    public $image;
}
Crear traducción



$article = new Article();
$article->topic = 'hola';
$dm->persist($article);
$dm->bindTranslation($article, 'es');
$dm->flush();
Obtener traducción




$article = $dm->findTranslation(null, '/test', 'es');
¿A qué lenguas está traducido?




$locales = $dm->getLocalesFor($article);
MultilangContentBundle


Documentos base para contenido, rutas y
menús

Selector de lengua

Las traducciones se almacenan en nodos hijo
Rutas
El problema


El usuario quiere definir sus urls

Y quiere unos cientos de miles
Solucionado!


navigation:
    pattern: "/{url}"
    defaults: { _controller: service.controller:indexAction }
    requirements:
        url: .*
Solucionado!
DynamicRouter

Las rutas son documentos en la BD

La ruta puede especificar un controlador...

...o usar uno por defecto
DynamicRouter
symfony_cmf_routing_extra:
    dynamic:
        enabled: true
        controllers_by_alias:
            demo_alias: sandbox_main.controller:aliasAction
        controllers_by_class:
            SandboxMainBundleDocumentDemoClassContent: 
sandbox_main.controller:classAction

            SymfonyCmfBundleRoutingExtraBundleDocument
RedirectRoute: 
symfony_cmf_routing_extra.redirect_controller:redirectAction

        templates_by_class:
            SandboxMainBundleDocumentEditableStaticContent:
SandboxMainBundle:EditableStaticContent:index.html.twig
DynamicRouter
symfony_cmf_routing_extra:
    dynamic:
        enabled: true
        controllers_by_alias:
            demo_alias: sandbox_main.controller:aliasAction
        controllers_by_class:
            SandboxMainBundleDocumentDemoClassContent: 
sandbox_main.controller:classAction

            SymfonyCmfBundleRoutingExtraBundleDocument
RedirectRoute: 
symfony_cmf_routing_extra.redirect_controller:redirectAction

        templates_by_class:
            SandboxMainBundleDocumentEditableStaticContent:
SandboxMainBundle:EditableStaticContent:index.html.twig
DynamicRouter
symfony_cmf_routing_extra:
    dynamic:
        enabled: true
        controllers_by_alias:
            demo_alias: sandbox_main.controller:aliasAction
        controllers_by_class:
            SandboxMainBundleDocumentDemoClassContent: 
sandbox_main.controller:classAction

            SymfonyCmfBundleRoutingExtraBundleDocument
RedirectRoute: 
symfony_cmf_routing_extra.redirect_controller:redirectAction

        templates_by_class:
            SandboxMainBundleDocumentEditableStaticContent:
SandboxMainBundle:EditableStaticContent:index.html.twig
DynamicRouter
symfony_cmf_routing_extra:
    dynamic:
        enabled: true
        controllers_by_alias:
            demo_alias: sandbox_main.controller:aliasAction
        controllers_by_class:
            SandboxMainBundleDocumentDemoClassContent: 
sandbox_main.controller:classAction

            SymfonyCmfBundleRoutingExtraBundleDocument
RedirectRoute: 
symfony_cmf_routing_extra.redirect_controller:redirectAction

        templates_by_class:
            SandboxMainBundleDocumentEditableStaticContent:
SandboxMainBundle:EditableStaticContent:index.html.twig
ChainRouter


symfony_cmf_routing_extra:
    chain:
        routers_by_id:
            symfony_cmf_routing_extra.dynamic_router: 20
            router.default: 100
¡Más!
MenuBundle, MultilangContentBundle
BlockBundle
PhpcrAdminBundle
En resumen...
Participa
    adou600 (Adrien Nicolet)                •   lapistano (Bastian Feder)
•   beberlei (Benjamin Eberlei)             •   lsmith77 (Lukas K. Smith)
•   bergie (Henri Bergius)                  •   micheleorselli (Michele Orselli)
•   brki (Brian King)                       •   nacmartin (Nacho Martín)
•   chirimoya (Thomas Schedler)             •   nicam (Pascal Helfenstein)
•   chregu (Christian Stocker)              •   Ocramius (Marco Pivetta)
•   cordoval (Luis Cordova)                 •   ornicar (Thibault Duplessis)
•   damz (Damien Tournoud)                  •   piotras
•   dbu (David Buchmann)                    •   pitpit (Damien Pitard)
•   dotZoki (Zoran)                         •   robertlemke (Robert Lemke)
•   ebi (Tobias Ebnöther)                   •   rndstr (Roland Schilter)
•   iambrosi (Ismael Ambrosi)               •   Seldaek (Jordi Boggiano)
•   jakuza (Jacopo Romei)                   •   sixty-nine (Daniel Barsotti)
•   justinrainbow (Justin Rainbow)          •   uwej711 (Uwe Jäger)
•   k-fish (Karsten Dambekalns)              •   vedranzgela (Vedran Zgela)
•   krizon (Kristian Zondervan)             •   videlalvaro (Alvaro Videla)


                              http://cmf.symfony.com

                                 #symfony-cmf IRC
Gracias
Nacho Martín

nacho@limenius.com
@nacmartin

More Related Content

What's hot

Novedades de aries
Novedades de ariesNovedades de aries
Novedades de arieslmrv
 
Curso Formacion Apache Solr
Curso Formacion Apache SolrCurso Formacion Apache Solr
Curso Formacion Apache SolrEmpathyBroker
 
PERSISTENCIA BASADA EN ARCHIVOS
PERSISTENCIA BASADA EN ARCHIVOSPERSISTENCIA BASADA EN ARCHIVOS
PERSISTENCIA BASADA EN ARCHIVOSDarwin Durand
 
Introduction to linux for bioinformatics
Introduction to linux for bioinformaticsIntroduction to linux for bioinformatics
Introduction to linux for bioinformaticsAlberto Labarga
 

What's hot (7)

Php
PhpPhp
Php
 
Novedades de aries
Novedades de ariesNovedades de aries
Novedades de aries
 
Curso Formacion Apache Solr
Curso Formacion Apache SolrCurso Formacion Apache Solr
Curso Formacion Apache Solr
 
Doctrine2 sf2Vigo
Doctrine2 sf2VigoDoctrine2 sf2Vigo
Doctrine2 sf2Vigo
 
PHP - MYSQL
PHP - MYSQLPHP - MYSQL
PHP - MYSQL
 
PERSISTENCIA BASADA EN ARCHIVOS
PERSISTENCIA BASADA EN ARCHIVOSPERSISTENCIA BASADA EN ARCHIVOS
PERSISTENCIA BASADA EN ARCHIVOS
 
Introduction to linux for bioinformatics
Introduction to linux for bioinformaticsIntroduction to linux for bioinformatics
Introduction to linux for bioinformatics
 

Viewers also liked

Charte et défis...
Charte et défis...Charte et défis...
Charte et défis...Guy Drouin
 
Création d'entreprise les clés du succès - Les Entreprenariales 2014
Création d'entreprise les clés du succès - Les Entreprenariales 2014Création d'entreprise les clés du succès - Les Entreprenariales 2014
Création d'entreprise les clés du succès - Les Entreprenariales 2014CEEI NCA
 
Angers Auto-Moto numero 2 - été 2013
Angers Auto-Moto numero 2 - été 2013Angers Auto-Moto numero 2 - été 2013
Angers Auto-Moto numero 2 - été 2013nantes-auto-moto
 
Nouvelle - Calédonie
Nouvelle - CalédonieNouvelle - Calédonie
Nouvelle - Calédoniesarahbelalia
 
Poème inédit parole au poète
Poème inédit   parole au poètePoème inédit   parole au poète
Poème inédit parole au poèteabdelmalek aghzaf
 
Présentation ShoreTel lors du Waycom Business Meeting du 11/06/15
Présentation ShoreTel lors du Waycom Business Meeting du 11/06/15Présentation ShoreTel lors du Waycom Business Meeting du 11/06/15
Présentation ShoreTel lors du Waycom Business Meeting du 11/06/15Waycom
 
[What's next ? Place à l'entreprise créative !] Le monde change, les stratégi...
[What's next ? Place à l'entreprise créative !] Le monde change, les stratégi...[What's next ? Place à l'entreprise créative !] Le monde change, les stratégi...
[What's next ? Place à l'entreprise créative !] Le monde change, les stratégi...TheCreativists
 
Que choisir Enquête sur le prix des parkings
Que choisir Enquête sur le prix des parkingsQue choisir Enquête sur le prix des parkings
Que choisir Enquête sur le prix des parkingsWebm Aster
 
L’échelle visuelle analogique un outil commun en équipe pluridisciplinaire.
L’échelle visuelle analogique   un outil commun en équipe pluridisciplinaire.L’échelle visuelle analogique   un outil commun en équipe pluridisciplinaire.
L’échelle visuelle analogique un outil commun en équipe pluridisciplinaire.Réseau Pro Santé
 
Una bella mujer JULIA URBIÑA
Una bella mujer JULIA URBIÑAUna bella mujer JULIA URBIÑA
Una bella mujer JULIA URBIÑABenito Peñate
 
Presentation THE PLACE TO DRESS
Presentation THE PLACE TO DRESSPresentation THE PLACE TO DRESS
Presentation THE PLACE TO DRESStheplacetodress
 
Los viajes de pocoyo , patricio y bob. alejandro y pedro
Los viajes de pocoyo , patricio y bob. alejandro y pedroLos viajes de pocoyo , patricio y bob. alejandro y pedro
Los viajes de pocoyo , patricio y bob. alejandro y pedroyanete
 
MSDevMtl introduction au dev SharePoint online, office et office 365
MSDevMtl introduction au dev SharePoint online, office et office 365MSDevMtl introduction au dev SharePoint online, office et office 365
MSDevMtl introduction au dev SharePoint online, office et office 365Vincent Biret
 
Calendrier P1 à P2B
Calendrier P1 à P2BCalendrier P1 à P2B
Calendrier P1 à P2Bbenjaave
 
Classement général Pronodix
Classement général PronodixClassement général Pronodix
Classement général Pronodixbenjaave
 
I convocatoria matemática x año curso 2015
I convocatoria matemática x año curso 2015I convocatoria matemática x año curso 2015
I convocatoria matemática x año curso 2015Jorge Umaña
 

Viewers also liked (20)

Charte et défis...
Charte et défis...Charte et défis...
Charte et défis...
 
Création d'entreprise les clés du succès - Les Entreprenariales 2014
Création d'entreprise les clés du succès - Les Entreprenariales 2014Création d'entreprise les clés du succès - Les Entreprenariales 2014
Création d'entreprise les clés du succès - Les Entreprenariales 2014
 
Angers Auto-Moto numero 2 - été 2013
Angers Auto-Moto numero 2 - été 2013Angers Auto-Moto numero 2 - été 2013
Angers Auto-Moto numero 2 - été 2013
 
Nouvelle - Calédonie
Nouvelle - CalédonieNouvelle - Calédonie
Nouvelle - Calédonie
 
Poème inédit parole au poète
Poème inédit   parole au poètePoème inédit   parole au poète
Poème inédit parole au poète
 
Présentation ShoreTel lors du Waycom Business Meeting du 11/06/15
Présentation ShoreTel lors du Waycom Business Meeting du 11/06/15Présentation ShoreTel lors du Waycom Business Meeting du 11/06/15
Présentation ShoreTel lors du Waycom Business Meeting du 11/06/15
 
[What's next ? Place à l'entreprise créative !] Le monde change, les stratégi...
[What's next ? Place à l'entreprise créative !] Le monde change, les stratégi...[What's next ? Place à l'entreprise créative !] Le monde change, les stratégi...
[What's next ? Place à l'entreprise créative !] Le monde change, les stratégi...
 
Présentation du thème
Présentation du thèmePrésentation du thème
Présentation du thème
 
Que choisir Enquête sur le prix des parkings
Que choisir Enquête sur le prix des parkingsQue choisir Enquête sur le prix des parkings
Que choisir Enquête sur le prix des parkings
 
Google Adwords
Google AdwordsGoogle Adwords
Google Adwords
 
L’échelle visuelle analogique un outil commun en équipe pluridisciplinaire.
L’échelle visuelle analogique   un outil commun en équipe pluridisciplinaire.L’échelle visuelle analogique   un outil commun en équipe pluridisciplinaire.
L’échelle visuelle analogique un outil commun en équipe pluridisciplinaire.
 
Una bella mujer JULIA URBIÑA
Una bella mujer JULIA URBIÑAUna bella mujer JULIA URBIÑA
Una bella mujer JULIA URBIÑA
 
Presentation THE PLACE TO DRESS
Presentation THE PLACE TO DRESSPresentation THE PLACE TO DRESS
Presentation THE PLACE TO DRESS
 
Los viajes de pocoyo , patricio y bob. alejandro y pedro
Los viajes de pocoyo , patricio y bob. alejandro y pedroLos viajes de pocoyo , patricio y bob. alejandro y pedro
Los viajes de pocoyo , patricio y bob. alejandro y pedro
 
Ene serpent blesse
Ene serpent blesseEne serpent blesse
Ene serpent blesse
 
MSDevMtl introduction au dev SharePoint online, office et office 365
MSDevMtl introduction au dev SharePoint online, office et office 365MSDevMtl introduction au dev SharePoint online, office et office 365
MSDevMtl introduction au dev SharePoint online, office et office 365
 
La salle ventadour
La salle ventadourLa salle ventadour
La salle ventadour
 
Calendrier P1 à P2B
Calendrier P1 à P2BCalendrier P1 à P2B
Calendrier P1 à P2B
 
Classement général Pronodix
Classement général PronodixClassement général Pronodix
Classement général Pronodix
 
I convocatoria matemática x año curso 2015
I convocatoria matemática x año curso 2015I convocatoria matemática x año curso 2015
I convocatoria matemática x año curso 2015
 

Similar to Symfony 2 CMF

Introducción a Laravel 5 - Un Framework para Artesanos Web
Introducción a Laravel 5 - Un Framework para Artesanos WebIntroducción a Laravel 5 - Un Framework para Artesanos Web
Introducción a Laravel 5 - Un Framework para Artesanos WebFacundo E. Goñi Perez
 
Código mantenible, en Wordpress.
Código mantenible, en Wordpress.Código mantenible, en Wordpress.
Código mantenible, en Wordpress.Asier Marqués
 
Tutorial3 Desymfony - La Vista. Twig
Tutorial3 Desymfony - La Vista. TwigTutorial3 Desymfony - La Vista. Twig
Tutorial3 Desymfony - La Vista. TwigMarcos Labad
 
Persistencia De Objetos(Hibernate)
Persistencia De Objetos(Hibernate)Persistencia De Objetos(Hibernate)
Persistencia De Objetos(Hibernate)Ronald Cuello
 
Frameworks para Php Adwa
Frameworks para Php AdwaFrameworks para Php Adwa
Frameworks para Php AdwaAndres Karp
 
Tutorial de cakePHP itst
Tutorial de cakePHP itstTutorial de cakePHP itst
Tutorial de cakePHP itstomicx
 
Symfony en Drupal 8 - DrupalCamp Spain
Symfony en Drupal 8 - DrupalCamp Spain Symfony en Drupal 8 - DrupalCamp Spain
Symfony en Drupal 8 - DrupalCamp Spain Raul Fraile
 
Persistencia de objetos con Hibernate
Persistencia de objetos con HibernatePersistencia de objetos con Hibernate
Persistencia de objetos con HibernateMauro Gomez Mejia
 
Introduccion a DOM y AJAX - Javier Oliver Fulguera
Introduccion a DOM y AJAX  -  Javier Oliver FulgueraIntroduccion a DOM y AJAX  -  Javier Oliver Fulguera
Introduccion a DOM y AJAX - Javier Oliver FulgueraJavier Oliver Fulguera
 
PHP.pdf PHP.pdf PHP.pdf PHP.pdf PHP.pdf PHP.pdf
PHP.pdf PHP.pdf PHP.pdf PHP.pdf PHP.pdf PHP.pdfPHP.pdf PHP.pdf PHP.pdf PHP.pdf PHP.pdf PHP.pdf
PHP.pdf PHP.pdf PHP.pdf PHP.pdf PHP.pdf PHP.pdfRaaulroodriguez
 
Framework .NET 3.5 14 Gestión de archivos y serialización
Framework .NET 3.5 14  Gestión de archivos y serializaciónFramework .NET 3.5 14  Gestión de archivos y serialización
Framework .NET 3.5 14 Gestión de archivos y serializaciónAntonio Palomares Sender
 
Introduccion A Php
Introduccion A PhpIntroduccion A Php
Introduccion A Phputs
 
Introduccion A Php
Introduccion A PhpIntroduccion A Php
Introduccion A Phputs
 

Similar to Symfony 2 CMF (20)

Laravel 5.1
Laravel 5.1Laravel 5.1
Laravel 5.1
 
Introducción a Laravel 5 - Un Framework para Artesanos Web
Introducción a Laravel 5 - Un Framework para Artesanos WebIntroducción a Laravel 5 - Un Framework para Artesanos Web
Introducción a Laravel 5 - Un Framework para Artesanos Web
 
Docker ECS en AWS
Docker ECS en AWS Docker ECS en AWS
Docker ECS en AWS
 
Código mantenible, en Wordpress.
Código mantenible, en Wordpress.Código mantenible, en Wordpress.
Código mantenible, en Wordpress.
 
Tutorial3 Desymfony - La Vista. Twig
Tutorial3 Desymfony - La Vista. TwigTutorial3 Desymfony - La Vista. Twig
Tutorial3 Desymfony - La Vista. Twig
 
Persistencia De Objetos(Hibernate)
Persistencia De Objetos(Hibernate)Persistencia De Objetos(Hibernate)
Persistencia De Objetos(Hibernate)
 
Frameworks para Php Adwa
Frameworks para Php AdwaFrameworks para Php Adwa
Frameworks para Php Adwa
 
Tutorial de cakePHP itst
Tutorial de cakePHP itstTutorial de cakePHP itst
Tutorial de cakePHP itst
 
9.laravel
9.laravel9.laravel
9.laravel
 
Desarrollo de aplicaciones con wpf
Desarrollo de aplicaciones con wpfDesarrollo de aplicaciones con wpf
Desarrollo de aplicaciones con wpf
 
Symfony en Drupal 8 - DrupalCamp Spain
Symfony en Drupal 8 - DrupalCamp Spain Symfony en Drupal 8 - DrupalCamp Spain
Symfony en Drupal 8 - DrupalCamp Spain
 
Persistencia de objetos con Hibernate
Persistencia de objetos con HibernatePersistencia de objetos con Hibernate
Persistencia de objetos con Hibernate
 
Introducción a Kohana Framework
Introducción a Kohana FrameworkIntroducción a Kohana Framework
Introducción a Kohana Framework
 
Introduccion a DOM y AJAX - Javier Oliver Fulguera
Introduccion a DOM y AJAX  -  Javier Oliver FulgueraIntroduccion a DOM y AJAX  -  Javier Oliver Fulguera
Introduccion a DOM y AJAX - Javier Oliver Fulguera
 
PHP.pdf PHP.pdf PHP.pdf PHP.pdf PHP.pdf PHP.pdf
PHP.pdf PHP.pdf PHP.pdf PHP.pdf PHP.pdf PHP.pdfPHP.pdf PHP.pdf PHP.pdf PHP.pdf PHP.pdf PHP.pdf
PHP.pdf PHP.pdf PHP.pdf PHP.pdf PHP.pdf PHP.pdf
 
Couch db
Couch dbCouch db
Couch db
 
Framework .NET 3.5 14 Gestión de archivos y serialización
Framework .NET 3.5 14  Gestión de archivos y serializaciónFramework .NET 3.5 14  Gestión de archivos y serialización
Framework .NET 3.5 14 Gestión de archivos y serialización
 
Drupal 8, presente y futuro
Drupal 8, presente y futuroDrupal 8, presente y futuro
Drupal 8, presente y futuro
 
Introduccion A Php
Introduccion A PhpIntroduccion A Php
Introduccion A Php
 
Introduccion A Php
Introduccion A PhpIntroduccion A Php
Introduccion A Php
 

More from Ignacio Martín

Elixir/OTP for PHP developers
Elixir/OTP for PHP developersElixir/OTP for PHP developers
Elixir/OTP for PHP developersIgnacio Martín
 
Introduction to React Native Workshop
Introduction to React Native WorkshopIntroduction to React Native Workshop
Introduction to React Native WorkshopIgnacio Martín
 
Server side rendering with React and Symfony
Server side rendering with React and SymfonyServer side rendering with React and Symfony
Server side rendering with React and SymfonyIgnacio Martín
 
Symfony 4 Workshop - Limenius
Symfony 4 Workshop - LimeniusSymfony 4 Workshop - Limenius
Symfony 4 Workshop - LimeniusIgnacio Martín
 
Server Side Rendering of JavaScript in PHP
Server Side Rendering of JavaScript in PHPServer Side Rendering of JavaScript in PHP
Server Side Rendering of JavaScript in PHPIgnacio Martín
 
Extending Redux in the Server Side
Extending Redux in the Server SideExtending Redux in the Server Side
Extending Redux in the Server SideIgnacio Martín
 
Redux Sagas - React Alicante
Redux Sagas - React AlicanteRedux Sagas - React Alicante
Redux Sagas - React AlicanteIgnacio Martín
 
React Native Workshop - React Alicante
React Native Workshop - React AlicanteReact Native Workshop - React Alicante
React Native Workshop - React AlicanteIgnacio Martín
 
Asegurando APIs en Symfony con JWT
Asegurando APIs en Symfony con JWTAsegurando APIs en Symfony con JWT
Asegurando APIs en Symfony con JWTIgnacio Martín
 
Redux saga: managing your side effects. Also: generators in es6
Redux saga: managing your side effects. Also: generators in es6Redux saga: managing your side effects. Also: generators in es6
Redux saga: managing your side effects. Also: generators in es6Ignacio Martín
 
Integrating React.js with PHP projects
Integrating React.js with PHP projectsIntegrating React.js with PHP projects
Integrating React.js with PHP projectsIgnacio Martín
 
Keeping the frontend under control with Symfony and Webpack
Keeping the frontend under control with Symfony and WebpackKeeping the frontend under control with Symfony and Webpack
Keeping the frontend under control with Symfony and WebpackIgnacio Martín
 
Integrando React.js en aplicaciones Symfony (deSymfony 2016)
Integrando React.js en aplicaciones Symfony (deSymfony 2016)Integrando React.js en aplicaciones Symfony (deSymfony 2016)
Integrando React.js en aplicaciones Symfony (deSymfony 2016)Ignacio Martín
 
Adding Realtime to your Projects
Adding Realtime to your ProjectsAdding Realtime to your Projects
Adding Realtime to your ProjectsIgnacio Martín
 
Symfony & Javascript. Combining the best of two worlds
Symfony & Javascript. Combining the best of two worldsSymfony & Javascript. Combining the best of two worlds
Symfony & Javascript. Combining the best of two worldsIgnacio Martín
 

More from Ignacio Martín (17)

Elixir/OTP for PHP developers
Elixir/OTP for PHP developersElixir/OTP for PHP developers
Elixir/OTP for PHP developers
 
Introduction to React Native Workshop
Introduction to React Native WorkshopIntroduction to React Native Workshop
Introduction to React Native Workshop
 
Server side rendering with React and Symfony
Server side rendering with React and SymfonyServer side rendering with React and Symfony
Server side rendering with React and Symfony
 
Symfony 4 Workshop - Limenius
Symfony 4 Workshop - LimeniusSymfony 4 Workshop - Limenius
Symfony 4 Workshop - Limenius
 
Server Side Rendering of JavaScript in PHP
Server Side Rendering of JavaScript in PHPServer Side Rendering of JavaScript in PHP
Server Side Rendering of JavaScript in PHP
 
Extending Redux in the Server Side
Extending Redux in the Server SideExtending Redux in the Server Side
Extending Redux in the Server Side
 
Redux Sagas - React Alicante
Redux Sagas - React AlicanteRedux Sagas - React Alicante
Redux Sagas - React Alicante
 
React Native Workshop - React Alicante
React Native Workshop - React AlicanteReact Native Workshop - React Alicante
React Native Workshop - React Alicante
 
Asegurando APIs en Symfony con JWT
Asegurando APIs en Symfony con JWTAsegurando APIs en Symfony con JWT
Asegurando APIs en Symfony con JWT
 
Redux saga: managing your side effects. Also: generators in es6
Redux saga: managing your side effects. Also: generators in es6Redux saga: managing your side effects. Also: generators in es6
Redux saga: managing your side effects. Also: generators in es6
 
Integrating React.js with PHP projects
Integrating React.js with PHP projectsIntegrating React.js with PHP projects
Integrating React.js with PHP projects
 
Introduction to Redux
Introduction to ReduxIntroduction to Redux
Introduction to Redux
 
Keeping the frontend under control with Symfony and Webpack
Keeping the frontend under control with Symfony and WebpackKeeping the frontend under control with Symfony and Webpack
Keeping the frontend under control with Symfony and Webpack
 
Integrando React.js en aplicaciones Symfony (deSymfony 2016)
Integrando React.js en aplicaciones Symfony (deSymfony 2016)Integrando React.js en aplicaciones Symfony (deSymfony 2016)
Integrando React.js en aplicaciones Symfony (deSymfony 2016)
 
Adding Realtime to your Projects
Adding Realtime to your ProjectsAdding Realtime to your Projects
Adding Realtime to your Projects
 
Symfony & Javascript. Combining the best of two worlds
Symfony & Javascript. Combining the best of two worldsSymfony & Javascript. Combining the best of two worlds
Symfony & Javascript. Combining the best of two worlds
 
Presentacion git
Presentacion gitPresentacion git
Presentacion git
 

Recently uploaded

La Cadena de suministro CocaCola Co.pptx
La Cadena de suministro CocaCola Co.pptxLa Cadena de suministro CocaCola Co.pptx
La Cadena de suministro CocaCola Co.pptxrubengpa
 
implemenatcion de un data mart en logistica
implemenatcion de un data mart en logisticaimplemenatcion de un data mart en logistica
implemenatcion de un data mart en logisticaghgfhhgf
 
DERECHO EMPRESARIAL - SEMANA 01 UNIVERSIDAD CESAR VALLEJO
DERECHO EMPRESARIAL - SEMANA 01 UNIVERSIDAD CESAR VALLEJODERECHO EMPRESARIAL - SEMANA 01 UNIVERSIDAD CESAR VALLEJO
DERECHO EMPRESARIAL - SEMANA 01 UNIVERSIDAD CESAR VALLEJOkcastrome
 
RENTAS_EXENTAS_Y_GASTOS_NO_DEDUCIBLES_ut.ppt
RENTAS_EXENTAS_Y_GASTOS_NO_DEDUCIBLES_ut.pptRENTAS_EXENTAS_Y_GASTOS_NO_DEDUCIBLES_ut.ppt
RENTAS_EXENTAS_Y_GASTOS_NO_DEDUCIBLES_ut.pptadministracion46
 
Las sociedades anónimas en el Perú , de acuerdo a la Ley general de sociedades
Las sociedades anónimas en el Perú , de acuerdo a la Ley general de sociedadesLas sociedades anónimas en el Perú , de acuerdo a la Ley general de sociedades
Las sociedades anónimas en el Perú , de acuerdo a la Ley general de sociedadesPatrickSteve4
 
Empresa Sazonadores Lopesa estudio de mercado
Empresa Sazonadores Lopesa estudio de mercadoEmpresa Sazonadores Lopesa estudio de mercado
Empresa Sazonadores Lopesa estudio de mercadoPsicoterapia Holística
 
senati-powerpoint_5TOS-_ALUMNOS (1).pptx
senati-powerpoint_5TOS-_ALUMNOS (1).pptxsenati-powerpoint_5TOS-_ALUMNOS (1).pptx
senati-powerpoint_5TOS-_ALUMNOS (1).pptxnathalypaolaacostasu
 
S05_s2+Prueba+d.pdfsfeaefadwwwwwwwwwwwwwwwwwwwwwwwwww
S05_s2+Prueba+d.pdfsfeaefadwwwwwwwwwwwwwwwwwwwwwwwwwwS05_s2+Prueba+d.pdfsfeaefadwwwwwwwwwwwwwwwwwwwwwwwwww
S05_s2+Prueba+d.pdfsfeaefadwwwwwwwwwwwwwwwwwwwwwwwwwwssuser999064
 
INFORMATIVO CIRCULAR FISCAL - RENTA 2023.ppsx
INFORMATIVO CIRCULAR FISCAL - RENTA 2023.ppsxINFORMATIVO CIRCULAR FISCAL - RENTA 2023.ppsx
INFORMATIVO CIRCULAR FISCAL - RENTA 2023.ppsxCORPORACIONJURIDICA
 
Manual para las 3 clases de tsunami de ventas.pdf
Manual para las 3 clases de tsunami de ventas.pdfManual para las 3 clases de tsunami de ventas.pdf
Manual para las 3 clases de tsunami de ventas.pdfga476353
 
TEORÍAS DE LA MOTIVACIÓN Recursos Humanos.pptx
TEORÍAS DE LA MOTIVACIÓN Recursos Humanos.pptxTEORÍAS DE LA MOTIVACIÓN Recursos Humanos.pptx
TEORÍAS DE LA MOTIVACIÓN Recursos Humanos.pptxterciariojaussaudr
 
CULTURA EN LA NEGOCIACIÓN CONCEPTOS Y DEFINICIONES
CULTURA EN LA NEGOCIACIÓN CONCEPTOS Y DEFINICIONESCULTURA EN LA NEGOCIACIÓN CONCEPTOS Y DEFINICIONES
CULTURA EN LA NEGOCIACIÓN CONCEPTOS Y DEFINICIONESMarielaAldanaMoscoso
 
2 Tipo Sociedad comandita por acciones.pptx
2 Tipo Sociedad comandita por acciones.pptx2 Tipo Sociedad comandita por acciones.pptx
2 Tipo Sociedad comandita por acciones.pptxRicardo113759
 
Maria_diaz.pptx mapa conceptual gerencia industral
Maria_diaz.pptx mapa conceptual   gerencia industralMaria_diaz.pptx mapa conceptual   gerencia industral
Maria_diaz.pptx mapa conceptual gerencia industralmaria diaz
 
Comparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdf
Comparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdfComparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdf
Comparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdfAJYSCORP
 
Caja nacional de salud 0&!(&:(_5+:;?)8-!!(
Caja nacional de salud 0&!(&:(_5+:;?)8-!!(Caja nacional de salud 0&!(&:(_5+:;?)8-!!(
Caja nacional de salud 0&!(&:(_5+:;?)8-!!(HelenDanielaGuaruaBo
 
mapa-conceptual-evidencias-de-auditoria_compress.pdf
mapa-conceptual-evidencias-de-auditoria_compress.pdfmapa-conceptual-evidencias-de-auditoria_compress.pdf
mapa-conceptual-evidencias-de-auditoria_compress.pdfAndresSebastianTamay
 
Ejemplo Caso: El Juego de la negociación
Ejemplo Caso: El Juego de la negociaciónEjemplo Caso: El Juego de la negociación
Ejemplo Caso: El Juego de la negociaciónlicmarinaglez
 

Recently uploaded (20)

La Cadena de suministro CocaCola Co.pptx
La Cadena de suministro CocaCola Co.pptxLa Cadena de suministro CocaCola Co.pptx
La Cadena de suministro CocaCola Co.pptx
 
implemenatcion de un data mart en logistica
implemenatcion de un data mart en logisticaimplemenatcion de un data mart en logistica
implemenatcion de un data mart en logistica
 
CONCEPTO Y LÍMITES DE LA TEORÍA CONTABLE.pdf
CONCEPTO Y LÍMITES DE LA TEORÍA CONTABLE.pdfCONCEPTO Y LÍMITES DE LA TEORÍA CONTABLE.pdf
CONCEPTO Y LÍMITES DE LA TEORÍA CONTABLE.pdf
 
DERECHO EMPRESARIAL - SEMANA 01 UNIVERSIDAD CESAR VALLEJO
DERECHO EMPRESARIAL - SEMANA 01 UNIVERSIDAD CESAR VALLEJODERECHO EMPRESARIAL - SEMANA 01 UNIVERSIDAD CESAR VALLEJO
DERECHO EMPRESARIAL - SEMANA 01 UNIVERSIDAD CESAR VALLEJO
 
RENTAS_EXENTAS_Y_GASTOS_NO_DEDUCIBLES_ut.ppt
RENTAS_EXENTAS_Y_GASTOS_NO_DEDUCIBLES_ut.pptRENTAS_EXENTAS_Y_GASTOS_NO_DEDUCIBLES_ut.ppt
RENTAS_EXENTAS_Y_GASTOS_NO_DEDUCIBLES_ut.ppt
 
Las sociedades anónimas en el Perú , de acuerdo a la Ley general de sociedades
Las sociedades anónimas en el Perú , de acuerdo a la Ley general de sociedadesLas sociedades anónimas en el Perú , de acuerdo a la Ley general de sociedades
Las sociedades anónimas en el Perú , de acuerdo a la Ley general de sociedades
 
Empresa Sazonadores Lopesa estudio de mercado
Empresa Sazonadores Lopesa estudio de mercadoEmpresa Sazonadores Lopesa estudio de mercado
Empresa Sazonadores Lopesa estudio de mercado
 
senati-powerpoint_5TOS-_ALUMNOS (1).pptx
senati-powerpoint_5TOS-_ALUMNOS (1).pptxsenati-powerpoint_5TOS-_ALUMNOS (1).pptx
senati-powerpoint_5TOS-_ALUMNOS (1).pptx
 
S05_s2+Prueba+d.pdfsfeaefadwwwwwwwwwwwwwwwwwwwwwwwwww
S05_s2+Prueba+d.pdfsfeaefadwwwwwwwwwwwwwwwwwwwwwwwwwwS05_s2+Prueba+d.pdfsfeaefadwwwwwwwwwwwwwwwwwwwwwwwwww
S05_s2+Prueba+d.pdfsfeaefadwwwwwwwwwwwwwwwwwwwwwwwwww
 
INFORMATIVO CIRCULAR FISCAL - RENTA 2023.ppsx
INFORMATIVO CIRCULAR FISCAL - RENTA 2023.ppsxINFORMATIVO CIRCULAR FISCAL - RENTA 2023.ppsx
INFORMATIVO CIRCULAR FISCAL - RENTA 2023.ppsx
 
Manual para las 3 clases de tsunami de ventas.pdf
Manual para las 3 clases de tsunami de ventas.pdfManual para las 3 clases de tsunami de ventas.pdf
Manual para las 3 clases de tsunami de ventas.pdf
 
TEORÍAS DE LA MOTIVACIÓN Recursos Humanos.pptx
TEORÍAS DE LA MOTIVACIÓN Recursos Humanos.pptxTEORÍAS DE LA MOTIVACIÓN Recursos Humanos.pptx
TEORÍAS DE LA MOTIVACIÓN Recursos Humanos.pptx
 
CULTURA EN LA NEGOCIACIÓN CONCEPTOS Y DEFINICIONES
CULTURA EN LA NEGOCIACIÓN CONCEPTOS Y DEFINICIONESCULTURA EN LA NEGOCIACIÓN CONCEPTOS Y DEFINICIONES
CULTURA EN LA NEGOCIACIÓN CONCEPTOS Y DEFINICIONES
 
2 Tipo Sociedad comandita por acciones.pptx
2 Tipo Sociedad comandita por acciones.pptx2 Tipo Sociedad comandita por acciones.pptx
2 Tipo Sociedad comandita por acciones.pptx
 
Maria_diaz.pptx mapa conceptual gerencia industral
Maria_diaz.pptx mapa conceptual   gerencia industralMaria_diaz.pptx mapa conceptual   gerencia industral
Maria_diaz.pptx mapa conceptual gerencia industral
 
Comparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdf
Comparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdfComparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdf
Comparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdf
 
Caja nacional de salud 0&!(&:(_5+:;?)8-!!(
Caja nacional de salud 0&!(&:(_5+:;?)8-!!(Caja nacional de salud 0&!(&:(_5+:;?)8-!!(
Caja nacional de salud 0&!(&:(_5+:;?)8-!!(
 
Tarea-4-Estadistica-Descriptiva-Materia.ppt
Tarea-4-Estadistica-Descriptiva-Materia.pptTarea-4-Estadistica-Descriptiva-Materia.ppt
Tarea-4-Estadistica-Descriptiva-Materia.ppt
 
mapa-conceptual-evidencias-de-auditoria_compress.pdf
mapa-conceptual-evidencias-de-auditoria_compress.pdfmapa-conceptual-evidencias-de-auditoria_compress.pdf
mapa-conceptual-evidencias-de-auditoria_compress.pdf
 
Ejemplo Caso: El Juego de la negociación
Ejemplo Caso: El Juego de la negociaciónEjemplo Caso: El Juego de la negociación
Ejemplo Caso: El Juego de la negociación
 

Symfony 2 CMF