En esta entrada vamos a dar unas ideas para generar ‘pantallas’ de forma relativamente fácil, asegurándonos de que las pantallas tienen el mismo estilo, generando código reutilizable en modo de ‘componentes’ y permitiendo desarrollar aplicaciones (sobretodo la parte de crud que es fundamental en cualquier aplicación de gestión), de manera rápida y eficaz.

Para ello la idea que proponemos es usar una serie de archivos JSON, con la definición de la pantalla, o los campos que ha de mostrar, como ideas básicas, tenemos:

  • poder mostrar diferentes tipos de campo (text, textarea, email, password, date, datetime, select, checkbox, etc…)
  • validar los inputs
  • poder mostrar otros campos según selección de opciones, típico campo Sí/No, que al clicar sí muestra otro grupo de campos
  • poder cargar campos ‘custom’, cargados desde otro template partial
  • tener diferentes pestañas para agrupar los datos por ‘categorías’
  • upload de archivos, imágenes, etc…
  • bootstrap para poder montar filas y cargar campos en diferentes cols.

Para ello, lo que hemos creado en softinline es una librería que monta dicho form leyendo la configuración de un archivo. JSON, de esta manera añadir un campo, sería tan fácil como por ejemplo añadir este bloque al apartado ‘files’ de nuestro archivo define del form:

{ «type»:»email», «required»:true, «title»:»email», «field»:»email» },

Evidentemente esto se puede mejorar y añadir más propiedades como por ejemplo definir que class se le asigna a la input o al label, pero todo esto lo veremos en otros post si vemos que este sistema tiene interés, en softinline le hemos denominado JFORMS, forms a partir de JSONS.

https://github.com/softinline/jcrud

https://packagist.org/packages/softinline/jcrud

Nos vemos pronto.