Hablemos de su proyecto
PHP symfony Sonata

Symfony 4 / Sonata: Crear una segunda interfaz con la misma entidad

Aquí veremos cómo crear una segunda interfaz mientras la entidad ya está en uso en una interfaz CRUD.El problema con las interfaces generadas automáticamente es que utilizan el nombre de la entidad para construir las rutas.Si configuramos una segunda inter...

Symfony 4 / Sonata: Crear una segunda interfaz con la misma entidad

Aquí veremos cómo crear una segunda interfaz mientras la entidad ya está en uso en una interfaz CRUD.

El problema con las interfaces generadas automáticamente es que utilizan el nombre de la entidad para construir las rutas.
Si configuramos una segunda interfaz con una entidad que ya se está utilizando, terminaremos con la misma ruta que la primera.

Para abordar este problema, utilizaremos estos dos parámetros en nuestra clase de administración para sobrescribir los valores predeterminados.
Supongamos que estamos utilizando la entidad "modelo", podríamos usar el término "modelo2" (o toto, lo que realmente quieras)

    protected $baseRouteName = 'admin_vendor_app_modele2';
    
    protected $baseRoutePattern = 'modele2';

No olvides limpiar la caché adecuadamente para que las nuevas rutas se tomen en cuenta.

Contrôles de compatibilité Symfony et Sonata

Adaptar el ejemplo a la versión instalada

Los ejemplos de Symfony y Sonata permanecen ligados a las versiones indicadas en el artículo. Symfony 4.x y Symfony 6.2 ya no se mantienen: para un proyecto actual, utilice una rama mantenida y la documentación que corresponda exactamente a sus dependencias.

php bin/console about
composer show symfony/framework-bundle sonata-project/admin-bundle

Antes de retomar el código, controle las firmas, los servicios, las rutas y las plantillas correspondientes. Después, agregue una prueba funcional que cubra los permisos, el código HTTP y el resultado visible.

Referencia: versiones de Symfony mantenidas.

Compartir este artículo