Armado de Esquemas YML
Versión 6 (Guillermo Zdanowicz, 02/10/2015 22:18)
| 1 | 1 | Guillermo Zdanowicz | h1. Armado de Esquemas YML |
|---|---|---|---|
| 2 | 1 | Guillermo Zdanowicz | |
| 3 | 1 | Guillermo Zdanowicz | A diferencia de Symfony 1, el esquema es armado por cada clase |
| 4 | 1 | Guillermo Zdanowicz | |
| 5 | 1 | Guillermo Zdanowicz | *Primero creamos la carepta doctrine* |
| 6 | 1 | Guillermo Zdanowicz | |
| 7 | 1 | Guillermo Zdanowicz | mkdir src/JobeetBundle/Resources/config/doctrine |
| 8 | 1 | Guillermo Zdanowicz | |
| 9 | 1 | Guillermo Zdanowicz | Creamos y editamos los archivos de esquemas |
| 10 | 1 | Guillermo Zdanowicz | |
| 11 | 6 | Guillermo Zdanowicz | mcedit src/JobeetBundle/Resources/config/doctrine/Personas.orm.yml |
| 12 | 1 | Guillermo Zdanowicz | |
| 13 | 1 | Guillermo Zdanowicz | <pre> |
| 14 | 6 | Guillermo Zdanowicz | # src/JobeetBundle/Resources/config/doctrine/Personas.orm.yml |
| 15 | 6 | Guillermo Zdanowicz | JobeetBundle\Entity\Personas: |
| 16 | 1 | Guillermo Zdanowicz | type: entity |
| 17 | 6 | Guillermo Zdanowicz | table: personas |
| 18 | 1 | Guillermo Zdanowicz | id: |
| 19 | 1 | Guillermo Zdanowicz | id: |
| 20 | 1 | Guillermo Zdanowicz | type: integer |
| 21 | 1 | Guillermo Zdanowicz | generator: { strategy: AUTO } |
| 22 | 1 | Guillermo Zdanowicz | fields: |
| 23 | 6 | Guillermo Zdanowicz | nombre: |
| 24 | 1 | Guillermo Zdanowicz | type: string |
| 25 | 1 | Guillermo Zdanowicz | length: 255 |
| 26 | 1 | Guillermo Zdanowicz | nullable: true |
| 27 | 6 | Guillermo Zdanowicz | apellido: |
| 28 | 1 | Guillermo Zdanowicz | type: string |
| 29 | 1 | Guillermo Zdanowicz | length: 255 |
| 30 | 6 | Guillermo Zdanowicz | dni: |
| 31 | 1 | Guillermo Zdanowicz | type: string |
| 32 | 1 | Guillermo Zdanowicz | length: 255 |
| 33 | 1 | Guillermo Zdanowicz | nullable: true |
| 34 | 6 | Guillermo Zdanowicz | activa: |
| 35 | 1 | Guillermo Zdanowicz | type: boolean |
| 36 | 1 | Guillermo Zdanowicz | nullable: true |
| 37 | 1 | Guillermo Zdanowicz | manyToOne: |
| 38 | 6 | Guillermo Zdanowicz | tiposdocumentos: |
| 39 | 6 | Guillermo Zdanowicz | targetEntity: Tiposdocumentos |
| 40 | 6 | Guillermo Zdanowicz | inversedBy: personas |
| 41 | 1 | Guillermo Zdanowicz | joinColumn: |
| 42 | 6 | Guillermo Zdanowicz | name: tiposdocumentos_id |
| 43 | 1 | Guillermo Zdanowicz | referencedColumnName: id |
| 44 | 1 | Guillermo Zdanowicz | </pre> |
| 45 | 1 | Guillermo Zdanowicz | |
| 46 | 6 | Guillermo Zdanowicz | mcedit src/JobeetBundle/Resources/config/doctrine/Tiposdocumentos.orm.yml |
| 47 | 1 | Guillermo Zdanowicz | |
| 48 | 1 | Guillermo Zdanowicz | <pre> |
| 49 | 6 | Guillermo Zdanowicz | # src/JobeetBundle/Resources/config/doctrine/Tiposdocumentos.orm.yml |
| 50 | 6 | Guillermo Zdanowicz | JobeetBundle\Entity\Tiposdocumentos: |
| 51 | 1 | Guillermo Zdanowicz | type: entity |
| 52 | 6 | Guillermo Zdanowicz | table: tiposdocumentos |
| 53 | 1 | Guillermo Zdanowicz | id: |
| 54 | 1 | Guillermo Zdanowicz | id: |
| 55 | 1 | Guillermo Zdanowicz | type: integer |
| 56 | 1 | Guillermo Zdanowicz | generator: { strategy: AUTO } |
| 57 | 1 | Guillermo Zdanowicz | fields: |
| 58 | 6 | Guillermo Zdanowicz | name: |
| 59 | 1 | Guillermo Zdanowicz | type: string |
| 60 | 1 | Guillermo Zdanowicz | length: 255 |
| 61 | 1 | Guillermo Zdanowicz | unique: true |
| 62 | 6 | Guillermo Zdanowicz | oneToMany: |
| 63 | 6 | Guillermo Zdanowicz | products: |
| 64 | 6 | Guillermo Zdanowicz | targetEntity: Personas |
| 65 | 6 | Guillermo Zdanowicz | mappedBy: tiposdocumentos |
| 66 | 1 | Guillermo Zdanowicz | </pre> |
| 67 | 1 | Guillermo Zdanowicz | |
| 68 | 1 | Guillermo Zdanowicz | |
| 69 | 6 | Guillermo Zdanowicz | |
| 70 | 6 | Guillermo Zdanowicz | |
| 71 | 1 | Guillermo Zdanowicz | *Generamos los archivos de Entidades* |
| 72 | 1 | Guillermo Zdanowicz | |
| 73 | 1 | Guillermo Zdanowicz | php app/console doctrine:generate:entities JobeetBundle |
| 74 | 1 | Guillermo Zdanowicz | |
| 75 | 1 | Guillermo Zdanowicz | *Si no hemos creado la base de datos y tenemos configuraod en app/config/parameters.yml el acceso, podemos crearla* |
| 76 | 1 | Guillermo Zdanowicz | |
| 77 | 1 | Guillermo Zdanowicz | ejemplo de parameters.yml |
| 78 | 1 | Guillermo Zdanowicz | |
| 79 | 1 | Guillermo Zdanowicz | <pre> |
| 80 | 1 | Guillermo Zdanowicz | parameters: |
| 81 | 1 | Guillermo Zdanowicz | database_host: 127.0.0.1 |
| 82 | 1 | Guillermo Zdanowicz | database_port: null |
| 83 | 1 | Guillermo Zdanowicz | database_name: s27 |
| 84 | 1 | Guillermo Zdanowicz | database_user: root |
| 85 | 1 | Guillermo Zdanowicz | database_password: MICLAVE_MYSQL |
| 86 | 1 | Guillermo Zdanowicz | mailer_transport: smtp |
| 87 | 1 | Guillermo Zdanowicz | mailer_host: 127.0.0.1 |
| 88 | 1 | Guillermo Zdanowicz | mailer_user: null |
| 89 | 1 | Guillermo Zdanowicz | mailer_password: null |
| 90 | 1 | Guillermo Zdanowicz | secret: dedeb278ce6f7db6ea0c78fa04499b87e418f613 |
| 91 | 1 | Guillermo Zdanowicz | </pre> |
| 92 | 1 | Guillermo Zdanowicz | |
| 93 | 1 | Guillermo Zdanowicz | php app/console doctrine:database:create |
| 94 | 1 | Guillermo Zdanowicz | |
| 95 | 1 | Guillermo Zdanowicz | *Luego trasladamos a la base de datos el esquema, en este caso conviene ya tener creada la base de datos segun lo configurado en parameters.yml* |
| 96 | 1 | Guillermo Zdanowicz | |
| 97 | 1 | Guillermo Zdanowicz | php app/console doctrine:schema:update --force |
| 98 | 1 | Guillermo Zdanowicz | |
| 99 | 6 | Guillermo Zdanowicz | Agregamos un metodo para los combos que obtienen datos entre clases |
| 100 | 1 | Guillermo Zdanowicz | |
| 101 | 6 | Guillermo Zdanowicz | en src/JobeetBundle/Entity/Tiposdocumentos.php |
| 102 | 6 | Guillermo Zdanowicz | |
| 103 | 6 | Guillermo Zdanowicz | <pre> |
| 104 | 6 | Guillermo Zdanowicz | public function __toString() |
| 105 | 6 | Guillermo Zdanowicz | { |
| 106 | 6 | Guillermo Zdanowicz | return $this->getName(); |
| 107 | 6 | Guillermo Zdanowicz | } |
| 108 | 6 | Guillermo Zdanowicz | </pre> |
| 109 | 6 | Guillermo Zdanowicz | |
| 110 | 6 | Guillermo Zdanowicz | Yo arme un archivo *generar* con el siguiente contenido |
| 111 | 6 | Guillermo Zdanowicz | |
| 112 | 6 | Guillermo Zdanowicz | <pre> |
| 113 | 6 | Guillermo Zdanowicz | php app/console doctrine:generate:entities JobeetBundle |
| 114 | 6 | Guillermo Zdanowicz | php app/console doctrine:schema:update --force |
| 115 | 6 | Guillermo Zdanowicz | php app/console doctrine:generate:crud --entity=JobeetBundle:Personas --route-prefix=personas --with-write --format=yml --overwrite |
| 116 | 6 | Guillermo Zdanowicz | |
| 117 | 6 | Guillermo Zdanowicz | php app/console cache:clear --env=prod |
| 118 | 6 | Guillermo Zdanowicz | php app/console cache:clear --env=dev |
| 119 | 6 | Guillermo Zdanowicz | </pre> |
| 120 | 6 | Guillermo Zdanowicz | |
| 121 | 6 | Guillermo Zdanowicz | le di todos los permisos, incluso el de ejecucion |
| 122 | 6 | Guillermo Zdanowicz | |
| 123 | 6 | Guillermo Zdanowicz | chmod 777 generar |
| 124 | 6 | Guillermo Zdanowicz | |
| 125 | 6 | Guillermo Zdanowicz | luego en consola solo corro , desde la carpeta donde se encuentra el archivo generar |
| 126 | 6 | Guillermo Zdanowicz | |
| 127 | 6 | Guillermo Zdanowicz | <pre> |
| 128 | 6 | Guillermo Zdanowicz | ./generar |
| 129 | 6 | Guillermo Zdanowicz | </pre> |
| 130 | 6 | Guillermo Zdanowicz | |
| 131 | 6 | Guillermo Zdanowicz | le doy Enter en todas las opciones |
| 132 | 6 | Guillermo Zdanowicz | |
| 133 | 6 | Guillermo Zdanowicz | *Referencias:* |
| 134 | 5 | Guillermo Zdanowicz | |
| 135 | 5 | Guillermo Zdanowicz | http://symfony.com/doc/current/book/doctrine.html |