Pages Navigation Menu
- Índice
- 1) Iniciación a PHP 5
- 2) Operadores en PHP
- 3) Instrucciones en PHP 5
- 4) Funciones en PHP 5
- 5) Procesado de formularios con PHP 5
- 6) Bases de Datos MySQL en PHP 5
- 6.1) Crear la base de datos y tabla MySQL en PHP 5
- 6.2) Conectarse a la Base de Datos de MySQL en PHP 5
- 6.3) Consultas a la Base de Datos MySQL en PHP 5
- 6.4) Insertar registros a la Base de Datos MySQL en PHP 5
- 6.5) Actualizar registros de Base de Datos MySQL en PHP 5
- 6.6) Borrar registros de la Base de Datos MySQL en PHP 5
- 7) Sesiones en PHP 5
- 8) Cookies en PHP 5
- 9) Expresiones regulares EE.RR en PHP 5
- 10) PHP 5 Orientado a Objetos
- Blog
- Auto Test de Evaluación de PHP 5
- ¿Quiénes somos?
Crud con Laravel 5: Update
- Escrito por el staff
- El día octubre 30, 2015
- FrameWorks, Laravel, PHP
- No hay comentarios.

Tercera parte del crud con Laravel 5, si no has visto las entradas anteriores te recomiendo que lo hagas ya que hacemos los pasos previos a este tutorial, primera (create) y segunda (read) parte.
En esta ocasión vamos a actualizar nuestros posts, para ello tenemos dos opciones, duplicar el formulario de crear posts o utilizar form model, nosotros vamos a utilizar la segunda, así podremos utilizar el formulario de crear posts también para hacer la edición, sólo tendremos que hacer algunos cambios.
Lo primero que debemos hacer para darle un poco de sentido a todo es cambiar el nombre del archivo create.blade.php alojado en resources/views/posts por createUpdate.blade.php, ahora abre el archivo y reemplaza el tag form por lo siguiente.
@if(isset($post)) {!! Form::model($post, ['route' => ['post.update', $post->id], 'method' => 'patch']) !!} @else {!! Form::open(['route' => 'post.store']) !!} @endif
Con ese poco código laravel 5 sabe si es un formulario para crear o editar y escribirá los campos si es necesario con los datos del post.
Ahora abre el archivo PostController y primero modifica el nombre de la vista del método create.
/** * Show the form for creating a new resource. * * @return Response */ public function create() { return view("posts.createUpdate"); }
Y ahora modifica el método edit por el siguiente que simplemente carga el formulario para editar.
/** * Show the form for editing the specified resource. * * @param int $id * @return Response */ public function edit($id) { return view('posts.createUpdate')->with('post', \App\Post::find($id)); }
Finalmente sólo nos queda editar el post, para ello debemos modificar el método update.
/** * Update the specified resource in storage. * * @param int $id * @return Response */ public function update($id, PostForm $postForm) { $post = \App\Post::find($id); $post->title = \Request::input('title'); $post->body = \Request::input('body'); $post->save(); return redirect()->route('post.edit', ['post' => $id])->with('message', 'Post updated'); }
Y eso es todo, pero para mejorar nuestro trabajo, vamos a añadir un par de enlaces para movernos por las páginas de nuestra aplicación, primero en el archivo resources/views/posts/index.blade.php.
<div class="row">
<div class="col-md-3 pull-right">
{!! Html::link(route('post.create'), 'Crear', array('class' => 'btn btn-info btn-md pull-right')) !!}
</div>
/*....................*/
Y ahora haz lo mismo con el archivo resources/views/posts/createUpdate.blade.php.
<div class="row">
<div class="col-md-3 pull-right">
{!! Html::link(route('post.create'), 'Crear', array('class' => 'btn btn-info btn-md pull-right')) !!}
</div>
/*....................*/
En el siguiente tutorial veremos cómo eliminar nuestros posts, espero que te haya gustado y si es así te agradezco que compartas mi trabajo en las redes sociales.
Comentarios
Patrocinadores
Entradas recientes
- Curso CRUD Laravel 5 en 4 capítulos
- Crud con laravel 5: Delete
- Crud con Laravel 5: Update
- Crud con Laravel 5: Read
- Crud con Laravel 5: Create
