Post Top Ad

Your Ad Spot

jueves, 30 de julio de 2020

Clase de formulario Laravel

Clase de formulario Laravel

¡Poner en marcha el inicio de nuestra aplicación RESTful fue un gran logro para nosotros! 


Nuestra primera forma de Laravel

En el controlador de blogposts, el create()método se usaría para mostrar un formulario al usuario para que pueda ingresar cierta información para crear un nuevo blogpost. 

Esto le indica a nuestra aplicación que obtenga la vista de creación de la carpeta blogposts y que muestre una vista. app/views/blogpostscarpeta, ahora podemos crear la vista que mostrará el formulario. create.blade.phpy se verá así:

¡Bien! Echemos un vistazo a lo que tenemos aquí.  @extends delayouts.defaultal igual que nuestros otros archivos de vista.  @section ('contenido') encontramos nuestro primer indicio de un formulario.  Form :: open para abrir el formulario.  Form :: open seráPOSTpara elactual , pero de acuerdo con nuestroPOST[ 'route' => 'blogposts.store' ]

Podemos ver que el método es POST, la acción es http://you.rock/blogposts, y un regalo adicional es la creación automática de un token de entrada oculto para ayudar en la seguridad. php artisan routespara recordarnos la relación entre URI , Nombre y Acción . blogpost.storeque debe POSThacer / blogposts (lo hace) y usar el store()método del BlogpostsController (lo hará)!

+ -------- + -------------------------------- + ------- ------------ + ----------------------------- + ------- --------- + --------------- +
El | 
+ -------- + -------------------------------- + ------- ------------ + ----------------------------- + ------- --------- + --------------- +
El | 
El | 
El | 
El | 
El | 
El | 
El | 
El | 
+ -------- + -------------------------------- + ------- ------------ + ----------------------------- + ------- --------- + --------------- +

Veamos qué nos están comprando los métodos auxiliares de Laravel restantes en términos de salida HTML al navegador:

Estilo básico con Bootstrap

También notará en el código anterior que puede asignar una clase para formar elementos al pasar una matriz al tercer parámetro si el elemento tiene un nombre y un campo de identificación similar {{ Form::textarea('body', '', array('class' => 'form-control')) }} , o el segundo parámetro si no es así.{{ Form::submit('Create Post', array('class' => 'btn btn-info')) }}

¡Excelente! Ahora tenemos un formulario que puede aceptar la entrada de un usuario, vamos a verlo ¿de acuerdo? http://you.rock/blogposts/createpara verlo🙂

clase de formulario laravel

¡Oye! Eso se ve bastante bien, limpias bien🙂


Manejar el envío del formulario

Ahora que tenemos un formulario atractivo, y podemos ver que podemos ingresar felizmente el texto en él para crear nuestra próxima obra maestra del blog, vamos a necesitar nuestro controlador para manejar los datos que realmente se envían a través del formar. store()método. POST blogposts | blogposts.store | BlogpostsController@store para el URI , Nombre y Acción respectivamente. {{ Form::open( [ 'route' => 'blogposts.store' ] ) }}en nuestro create.blade.php , hemos configurado la ruta correcta.

Actualice el método store () en BlogpostsController

Veamos primero cómo maneja Laravel la captura de los datos que se ingresan en el formulario. 

Ahora seamos valientes y escriba un texto aleatorio en nuestros campos de formulario y presione el botón Enviar para ver qué sucede:

Bueno, saltando Jackhammers, ¿podrías echarle un vistazo a eso? store()método aún más. 

Repasemos lo que está sucediendo aquí.

  • Crear una nueva instancia de un modelo de Blogpost
  • Asigne el texto del título a la propiedad 
  • Asigne el texto del cuerpo a la propiedad 
  • Use PHP nativo para crear una babosa del texto del Título
  • Asigne la babosa a la $ blogpost-> slug
  • Guarde el modelo de Blogpost en la base de datos
  • Redireccionar al usuario a la página de índice

Me parece razonable, ¿debemos presionar el Crear publicación ? aquí vamos:

nueva publicación de blog de laravel

Pues échale un vistazo amigos. historia de Twitter Bootstrap . store()método funcionó según lo previsto!


Eliminar una publicación de blog a través de Destroy

Ahora podemos crear publicaciones de blog con nuestra pequeña aplicación Laravel, ¡qué diversión nos estamos divirtiendo! / blogposts / {blogposts} como se muestra en nuestras rutas DELETE blogposts/{blogposts} | blogposts.destroy | BlogpostsController@destroy.

Creemos un botón en nuestra 

Hemos visto esta vista antes, pero echemos un vistazo al nuevo código que está creando un botón que nos permite eliminar una publicación de blog. DELETEsolicitud a blogposts.destroy . Form::open(array('route' => array('blogposts.destroy', $blogpost->slug), 'method' => 'delete')).

A continuación, debemos asegurarnos de que la acción se enruta al URI correcto. {{ URL::route('blogposts.destroy', $blogpost->slug) }}.

Por último, simplemente cerraremos el formulario a través de Form :: close () .

¡Analicemos nuestra publicación recién creada visitando http://you.rock/blogposts/the-history-of-twitter-bootstrappara ver nuestro nuevo botón de eliminación!

botón de borrar laravel

¡Frio! ¡No hagas clic en el botón Eliminar todavía!

Actualizar el método destroy ()

El botón Eliminar ahora está en su lugar, y hemos especificado a través de la ruta nombrada blogposts.destroy, para golpear el destroy()método en el Controlador de Blogposts. 

¿Qué debería pasar aquí? 

  • Asigne 'slug' a la variable $ column
  • Use el modelo de Blogpost para encontrar la publicación por slug y asígnela a $ blogpost
  • Elimine esa publicación de blog llamando a $ blogpost-> delete ()
  • Redireccionar al usuario a la página de índice

¡Probémoslo ahora, adelante y presiona el botón Eliminar !
blog laravel eliminar

¡Éxito! Podemos ver que al hacer clic en el botón Eliminar, se nos dirige de nuevo a la página de índice, y si notas en la lista de publicaciones, ¡ La historia de Twitter Bootstrap ya no está allí!  Laravel Validation a nuestra pequeña aplicación!

No hay comentarios.:

Publicar un comentario

Dejanos tu comentario para seguir mejorando!

outbrain

Páginas