Hablemos de su proyecto

Categoría

symfony

34 artículos Página 3

Symfony4 / Sonata: Crear un administrador de relación Muchos a Muchos

Desarrollaremos aquí todas las manipulaciones para construir una interfaz de muchos a muchos a través de Sonata.Tomaremos como ejemplo una gestión de zonas con una conexión por departamentos. Cada zona está así constituida por múltiples conexiones con la tabla de departamentos.En MysqlWorkbench, se ve así: Para generar las entidades, utilizamos el siguiente comando: php bin/console doctrine:mapping:import "App\Entity" annotation --path=src/Entity ...

Symfony / Sonata: Añadir una función de clonación en un CRUD

Para agregar una función de duplicación de objetos a una lista CRUD, necesitas modificar la lista añadiendo el botón, configurar una ruta, ejecutar el código de duplicación de objeto y, finalmente, referenciar el controlador que alojará nuestra función en nuestra interfaz, a través de su servicio.Añadiendo el botón:En tu controlador, añade el botón haciendo referencia a la plantilla del botón.Aquí establecemos la ruta 'Admin/list__action_clone.html.twig'. El...

Symfony 4 / Sonata: Crear una interfaz CRUD anidada (hijo 1->N) con ordenación por arrastrar y soltar

En resumen, queremos crear una interfaz CRUD, 1N, con la cual, cuando estamos editando un elemento, agregamos un panel para gestionar todos los elementos hijos.Aquí tenemos una tabla wtype, con una tabla wconf que contiene una serie de registros vinculados a un elemento wtype. Al igual que para el ejemplo de implementación de ordenable con arrastrar y soltar ( disponible aquí ) vamos a usar los siguientes componentes:pixassociates/sortable-behavior-bundle y stof/doctrine-ext...

Symfony 4 / Sonata: Administrar el orden con arrastrar y soltar

Necesitas instalar pixassociates/sortable-behavior-bundle y stof/doctrine-extensions-bundle composer require stof/doctrine-extensions-bundle composer require pixassociates/sortable-behavior-bundle Añade la configuración en pix_sortable.yamlAgregando la entidad y el campo en position_field (aquí wconf, y el campo de posición) pix_sortable_behavior: db_driver: orm # mongodb default value : orm position_field: default: position #default value : position entities: ...

Symfony 4 / Sonata: tipos de formulario

Aquí hay una lista de los tipos de formulario comunes utilizados en interfaces de administración.Selector de Fecha y HoraAñade la plantilla en el archivo config/packages/twig.yaml twig: form_themes: - '@SonataCore/Form/datepicker.html.twig' Y en el controlador: $formMapper->with('Date d\'activation', ['class' => 'col-md-4 abcdaire']) ->add('activation_debut', DatePickerType::class, ['required' => false, 'label'=>'Activation début...

Symfony 4 / Sonata agregar un filtro vinculado a una entidad OneToMany

Los filtros se gestionan en el método configureDatagridFilters protected function configureDatagridFilters(DatagridMapper $datagridMapper) { $filers=$datagridMapper->getAdmin()->getFilterParameters(); } Se puede añadir un filtro simple en un título o cualquier parámetro de nuestra entidad.El parámetro show_filter permite mostrarlo al cargar la página. Combinado con el valor de $filters, se puede especificar que se mantenga el elemento mostrado después del envío del filtro.Por ejempl...

Symfony 4 / Sonata: Uso de una clave primaria con una /

Aunque parezca extraño, tuve que utilizar una entidad con una clave primaria establecida en un campo varchar, y algunos valores contenían un " / ".Hasta que te enfrentas al problema, es imposible imaginar que causará un inconveniente. Y luego, se desata el drama. An exception has been thrown during the rendering of a template ("Parameter "id" for route "admin_app_wtype_edit" must match "[^/]++" ("MACHIN/CHOSE" given) to generate a corresponding URL.")...

Symfony 4 / Sonata: Crear una Administración Uno a Muchos (1N)

Vamos a crear una interfaz de administración 1N, con dos entidades. La primera, Uno, y la segunda, Muchos, y configurar un panel de administración para la tabla Uno, que puede afectar a varios elementos de la tabla Muchos. Para darle más interés, añadiremos algunos parámetros adicionales, como campos de marca de tiempo para fechas de sincronización con un SI, y campos primarios que no se llaman ID y no se autoincrementan. En nuestro caso, tenemos una sincron...

Symfony 4 / Sonata: Crear una autenticación de frontend

Para usar una tabla diferente a la predeterminada para la autenticación, Primero necesitamos crear nuestra entidad que gestionará nuestros usuarios. Esta entidad debe implementarse en UserInterface. Entonces necesitamos añadir una referencia al componente e implementarlo: <?php namespace App\Entity; use Doctrine\Common\Collections\ArrayCollection; use Doctrine\Common\Collections\Collection; use Doctrine\ORM\Mapping as ORM; use Doctrine\ORM\Mapping\Entity...

Symfony 4 / Sonata: Iniciar un proyecto con Symfony 4 + Sonata + FosUser + Media

Aquí están los comandos para inicializar un proyecto de Symfony con un panel de administración seguro.Comience instalando el esqueleto del proyecto.composer create-project symfony/skeleton nombre-del-proyecto Agregue los componentes necesarios: cd nom-du-projet composer require symfony/debug-pack --no-update composer require symfony/maker-bundle --dev --no-update composer require sonata-project/doctrine-orm-admin-bundle --no-update composer require templating --no-update composer require...