Generando las entidades y el CRUD
El primer paso es pedir a Doctrine que introspeccione la B.D. y genere los archivos de metadatos correspondientes. Los archivos metadatos describen la clase entidad paragenerar tablas basándose en los campos.
php app/console doctrine:mapping:convert xml ./src/Tribunal/TribunalBundle/Resources /config/doctrine/metadata/orm –from-database –force
Una vez generados losarchives de metadatos, puedes pedir a Doctrine que importe el esquema y construya las clases relacionadas con la entidad, ejecutando las 2 órdenes siguientes:
php app/console doctrine:mapping:importTribunalBundle annotation
php app/console doctrine:generate:entities TribunalBundle
-La primera orden genera las clases de la entidad con anotaciones.
-La segunda orden genera todos los captadores ydefinidores (get y set).
• Las relaciones en el EMS se hacen a través de las llaves foráneas.
Generando el CRUD
Para que funcione correctamente la generación será necesario modificar el ficheroClientes.php para que el atributo de la clave primaria de llame "$id" en vez de "$clientesid" de la siguiente manera...
/**
* @var integer $id
*
* @ORM\Column(name="clienteid",type="integer", nullable=false)
* @ORM\Id
* @ORM\GeneratedValue(strategy="IDENTITY")
*/
private $id;
También será necesario cambiar el método getClientesid poniendo lo siguiente:/**
* Get id
* @return integer
*/
public function getId()
{
return $this->id;
}
Como puede observarse lo único que se han cambiado son los comentarios queestán colocados antes de la definición del atributo, el nombre del propio atributo, el método de obtención de datos del atributo $id, todo lo demás en el fichero permanecerá constante.
Si utilizas elcomando php app/console generate:doctrine:crud
--entity=BUNDLE:ENTIDAD --route-prefix="admin/ENTIDAD" --format=yml --with-write
Te preguntará:
1. The Entity shortcut name.
2. Do you want...
Regístrate para leer el documento completo.