sql >> Base de Datos >  >> RDS >> Mysql

Generación de entidades a partir de la base de datos.

Su caso está bien documentado en el sitio web de Symfony titulado "Cómo generar entidades de una base de datos existente"

Como decía la documentación:

Usando el siguiente comando (asumiendo que el nombre abreviado de su paquete es GOnteriorGOBundle )

Entonces tienes que llamar.

Si necesita generar clases de entidad con asignaciones de anotaciones, debe ejecutar el siguiente comando antes de doctrine:generate:entities

La ruta debe ser solo ./src en lugar de ./src/GOutside/GOBundle/Resources/config/doctrine

Actualizado:

Si todo está correcto en su configuración, obtendrá el error Database does not have any mapping information. es improbable!! No estoy seguro de este error. Pero según el esquema de la tabla de su base de datos, hay algunos problemas que le impedirán crear información de mapeo.

  1. Tu tabla contiene un tipo especial de punto que la doctrina no puede manejar.
  2. La tabla de su base de datos tiene varias tablas sin ninguna clave principal. Doctrine no admite la ingeniería inversa de tablas que no tienen una clave principal

Para resolver el problema (1), puede agregar un asignación personalizada en la sección de configuración de su doctrina. Por ejemplo, para asignar el tipo de punto como una cadena, puede escribir:

doctrine:
    dbal:
        //Other connection parameters
        mapping_types:
            point: string

para el segundo problema, debe definir la clave principal para esas tablas, que podrían ser un campo nuevo o una clave principal compuesta.