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.

Os adjunto el codigo de la vista de edicion:
El codigo de la vista formulario:
El codigo del controlador:
El codigo del modelo:
El codigo de las rutas:
Os agradeceria mucho si me podeis ayudar, para que evolucione en mi aprendizaje.

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


0