es Spanish
code

Editar formulario en EasyAdmin Symfony con Twig

Share on facebook
Share on linkedin
Share on twitter
Share on email

Modificar un formulario en EasyAdmin con base en Symfony.

En este apartado editaremos un formulario en EasyAdmin, estos formularios suelen crearse automáticamente pero usando Twig podremos adaptarlo a nuestras necesidades.

Primero tenemos que editar la “cabecera” el easy_admin.yaml, normalmente lo encontraremos en /config/packages:

form_theme: #al mismo nivel de tabulado que el menú
 - "vertical"
 - 'form.html.twig' #documento donde modificaremos el formulario

Y en el apartado propiedades de la entidad que deseamos modificar añadimos un type_option y un template:

form:
 title: 'Crear / Editar Productos'
 fields:

  - { property: 'availabilityId', label: 'Id de disponibilidad' , type_options: {block_name: 'custom_title', expanded: true, multiple: true, allow_extra_fields: true, trim: true } , template: 'form.html.twig' }
# Es muy importante indicar el nombre de nuestro fichero twig donde editaremos el formulario.
#Así como darle un block_name diferente de otra propiedad de la entidad.

Ya lo tenemos todo listo para modificar el formulario con Twig

Sacaremos los datos que necesitaremos del DOM en el formulario preestablecido por EasyAdmin:

 {% block _product_custom_title_widget %} 

 {{ dump(form) }} //Recomiedno usar el dump para mira como es la estructura del formulario

    {% block entity_form %} 

     {% set children = form.children %}

      <tableborder="1">

        <tr style="background-color: #dadada;"><td style="width:120px;"align="center">ID</td><td style="width:120px;"style="width:100px;"align="center">NOMBRE</td><td style="width:120px;"align="center">SELECCIONE</td></tr>

        {% for key, value in children %}

            <tr><tdalign="center">{{key}}</td><tdalign="center">{{value.vars.label}}</td><tdalign="center"><inputid="product_availabilityId_{{key}}"name="product[availabilityId][]"value="{{key}}"type="checkbox"></td></tr>
              //es importante marcara las ids como las del formulario original, esto puedes verlo con el dump
        {% endfor %}

      </table>

    {% endblock entity_form %}

 {{ dump() }}//Con este dump podremos ver todos los elementos del DOM

{% endblock %}

Puedes editar tú formulario como quieras y añadir cualquier elemento que creas necesario.

Y eso es todo, espero que os haya sido de utilidad. Cualquier duda o comentario será bienvenida.

Aquí puedes ver otros artículos de interés relacionados:

Si te ha servido, deja un comentario

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Más entradas

Instalación WooCommerce en WordPress
Apuntes

Manual de WooCommerce

En este post, os dejamos un pequeño manual de WooCommerce. Os vamos a enseñar como instalar y manejar de manera básica WooCommerce en WordPress. ¿Qué

Logo BlackData
Blog

BlackData, nuevo Colaborador

BlackData es una empresa la cuál es especialista en ciberseguridad y auditorias de vulnerabilidades. Cuentan con un equipo técnico multidisciplinar que garantiza un alto nivel

Categorías

¿Quieres impulsar tu negocio?

escríbenos y manténte en contacto

Desarrollo de tiendas online Garber Informática

Contacta con nosotros