Generar entities, repositories y proxies

Generar Entities, Repositories, Proxies

Para generar las Entities, Proxies y Repositories a partir de Mappings generados con el ORM Designer a través del script doctrine-cli.php, se tienen que seguir los siguientes pasos:

  1. Generar los mappings con el ORM Designer añadiendo como Namespace el termino Entities.
  2. Una vez generados los mappings, copiarlos en la carpeta application/models/Mappings. Además, crear las carpetas Entities, Repositories, Proxies dentro de la carpeta models.
  3. Ejecutar en doctrine-cli.php los siguientes comandos

[code]
$ php doctrine-cli.php orm:generate-entities models/
$ php doctrine-cli.php orm:generate-repositories models/
$ php doctrine-cli.php orm:generate-proxies models/Proxies/
[/code]

Comandos útiles

Enlace principal http://joelverhagen.com/blog/2011/05/setting-up-codeigniter-2-with-doctrine-2-the-right-way/

Generar mappings con Reverse Engineering

Para generar especificaciones de entidades a partir de una base de datos creada (hacer ingeniera inversa) necesitamos tener la configuración de la base de datos que queremos cargar como activa en el archivo de config de Doctrine. Además, necesitamos un script que nos permita ejecutar la CLI (Command Line Interface) de Doctrine, que en nuestro caso la hemos creado en el interior de nuestro CI2 en la ruta application/doctrine-cli.php.

Para generar los mappings, creamos un directorio donde almacenarlos (en nuestro caso en application/models/reverseEngineering). Debemos tener en cuenta que hay valores y tipos que Doctrine 2 no acepta o no puede traducir, como el tipo enum.

[code]
$ cd project_root/application #Nos situamos donde tengamos el script doctrine-cli
$ php doctrine-cli.php orm:convert-mapping –from-database [yml | xml | php] /home/root_to_mapping_folder
[/code]

Firewall Ubuntu