Generando un controlador CRUD basado en una entidad de Doctrine

Usando

La orden generate:doctrine:crud genera un controlador básico para una determinada entidad ubicada en un determinado paquete. Este controlador te permite realizar cinco operaciones básicas en un modelo.

  • Listar todos los registros
  • Mostrar un determinado registro identificado por su clave primaria
  • Crear un nuevo registro.
  • Editar un registro existente.
  • Eliminar un registro existente.

De manera predeterminada, la orden se ejecuta en modo interactivo y hace preguntas para determinar el nombre de la entidad, el prefijo de la ruta o cuando o no generar acciones de escritura:

php app/console generate:doctrine:crud

Para desactivar el modo interactivo, utiliza la opción --no-interaction pero no olvides suministrar todas las opciones necesarias:

php app/console generate:doctrine:crud --entity=AcmeBlogBundle:Post --format=annotation --with-write --no-interaction

Opciones disponibles

  • --entity: El nombre de la entidad dado en notación de atajo que contiene el nombre del paquete en el que se encuentra la entidad y el nombre de la entidad. Por ejemplo: AcmeBlogBundle:Post:

    php app/console generate:doctrine:crud --entity=AcmeBlogBundle:Post
    
  • --route-prefix: El prefijo que se utilizará para cada ruta que identifica una acción:

    php app/console generate:doctrine:crud --route-prefix=acme_post
    
  • --with-write: (no) [valores: yes | no] Cuando o no generar las acciones new, create, edit, update y delete:

    php app/console generate:doctrine:crud --with-write
    
  • --format: (annotation) [valores: yml, xml, php o annotation] Determina el formato de enrutado a usar para los archivos de configuración generados. De manera predeterminada, la orden utiliza el formato annotation. Al elegir el formato annotation se espera que el paquete SensioFrameworkExtraBundle ya esté instalado:

    php app/console generate:doctrine:crud --format=annotation
    
Bifúrcame en GitHub