¡INSCRÍBETE A CUALQUIER CURSO CON UN 50% DE DESCUENTO PARA NUEVOS CLIENTES!

Una gran característica de Yii2 es su forma de manejar los formularios, realmente sencilla, con validaciones automáticas a través de los modelos, primero en el cliente con ajax y después en el servidor, y todo esto simplemente definiendo algunas cosas en el modelo.

Para este ejemplo, siguiendo el tutorial anterior vamos a ver cómo crear un formulario con Yii2 para crear nuevos posts.

Lo primero que debemos hacer es abrir el modelo Post y añadir los métodos rules y attributeLabels

.


El método rules define las reglas de validación necesarias para poder guardar cada campo en la base de datos, el método attributeLabels es para definir las labels de cada campo de nuevo formulario, así de sencillo.

Ahora vamos a crear un nuevo método en nuestro controlador PostsController llamado add con el siguiente código.


Así de sencillo es crear una acción encargada de mostrar la vista del formulario y su validación, no tenemos que hacer nada más aquí, sólo resta crear el formulario utilizando la clase ActiveForm.

Crea un nuevo archivo de vista en views/posts llamado add.php y añade el siguiente código.


¿Tremendo verdad?, sin necesidad de nada más, tenemos un formulario completamente validado en el cliente y el servidor utilizando únicamente nuestro modelo.

Si ahora tratas de ejecutar el formulario sin datos, verás que aparecen los mensajes de validación, en cambio, si completas el formulario y haces submit, verás que eres redirigido a la vista index y el post ha sido guardado correctamente en base de datos.

Así de sencillo es crear formularios en Yii2, espero que te haya gustado y servido.