Laravel - Error al guardar los datos de una edicion

 
Vista:
sin imagen de perfil
Val: 2
Ha disminuido su posición en 3 puestos en Laravel (en relación al último mes)
Gráfica de Laravel

Error al guardar los datos de una edicion

Publicado por Garikoitz (2 intervenciones) el 26/02/2019 10:46:34
Hola he seguido los pasos de un videotutorial para implementar un sistema de roles y permisos, el codigo esta igual pero me da un fallo al guardar los datos de una edición. (Crear y borrar funcionan correctamente).

Os agradeceria mucho si me podeis ayudar, para que evolucione en mi aprendizaje.

editar_productos_error_laravel

Os adjunto el codigo de la vista de edicion:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
@extends('layouts.app')
 
@section('content')
<div class="container">
    <div class="row justify-content-center">
        <div class="col-md-12">
            <div class="card">
                <div class="card-header">Producto</div>
 
                <div class="card-body">
                    {!! Form::model($product, ['route' => ['products.update', $product->id],
                    'method' => 'PUT']) !!}
 
                        @include('products.partials.form')
 
                    {!! Form::close() !!}
                </div>
            </div>
        </div>
    </div>
</div>
@endsection

El codigo de la vista formulario:

1
2
3
4
5
6
7
8
9
10
11
12
13
<div class="form-group">
	{{ Form::label('name', 'Nombre del Producto') }}
	{{ Form::text('name', null, ['class' => 'form-control', 'id' => 'name']) }}
</div>
 
<div class="form-group">
	{{ Form::label('description', 'Descripción') }}
	{{ Form::textarea('description', null, ['class' => 'form-control']) }}
</div>
 
<div class="form-group">
	{{ Form::submit('Guardar', ['class' => 'btn btn-sm btn-primary']) }}
</div>

El codigo del controlador:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<?php
 
namespace App\Http\Controllers;
 
use Illuminate\Http\Request;
use App\Product;
 
 
 
class ProductController extends Controller
{
    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
 
    public function edit($id)
    {
        $product = Product::find($id);
 
        return view('products.edit', compact('product'));
    }
 
    /**
     * Update the specified resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    public function update(Request $request, $id)
    {
        $product = Product::update($request->all());
 
        return redirect()->route('products.edit', $product->id)
            ->with('info', 'Producto actualizado con éxito');
    }

El codigo del modelo:

1
2
3
4
5
6
7
8
9
10
11
12
<?php
 
namespace App;
 
use Illuminate\Database\Eloquent\Model;
 
class Product extends Model
{
    protected $fillable = [
    	'name', 'description',
    ];
}

El codigo de las rutas:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Auth::routes();
 
Route::get('/home', 'HomeController@index')->name('home');
 
//Roles y Permisos
 
Route::middleware(['auth'])->group(function(){
 
	//Products
	Route::post('products/store', 'ProductController@store')->name('products.store')
		->middleware('permission:products.create');
 
	Route::get('products', 'ProductController@index')->name('products.index')
		->middleware('permission:products.index');
 
	Route::get('products/create', 'ProductController@create')->name('products.create')
		->middleware('permission:products.create');
 
	Route::put('products/{product}', 'ProductController@update')->name('products.update')
		->middleware('permission:products.edit');
 
	Route::get('products/{product}', 'ProductController@show')->name('products.show')
		->middleware('permission:products.show');
 
	Route::delete('products/{product}', 'ProductController@destroy')->name('products.destroy')
		->middleware('permission:products.destroy');
 
	Route::get('products/{product}/edit', 'ProductController@edit')->name('products.edit')
		->middleware('permission:products.edit');
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder