我尝试在数据库中编辑/更新我的数据。但总是得到这个错误。
NotFoundHttpException in Handler.php line 102: No query results for model [App\Produk]
这是controller
中的功能:
public function edit($id)
{
$data = Produk::findOrFail($id);
return view('pages.admin.edit')->with('data',$data);
}
public function update($id, Request $request)
{
$data = Produk::findOrFail($id);
$data->update($request->all());
return redirect('pages.admin.lihat');
}
这是我的edit.blade.php
表格:
{!! Form::model($data,['method'=>'PATCH','url' => 'admin/update']) !!}
<div class="contact-form">
<div class="form-group">
{!! Form::label('Nama Produk') !!}
{!! Form::text('nama', null,
array('required',
'class'=>'form-control',
'placeholder'=>'Nama Produk')) !!}
</div>
<div class="form-group">
{!! Form::label('Jumlah Produk') !!}
{!! Form::number('jumlah', null,
array('required',
'class'=>'form-control',
'placeholder'=>'Jumlah Produk')) !!}
</div>
<div class="form-group">
{!! Form::label('Harga') !!}
{!! Form::text('harga', null,
array('required',
'class'=>'form-control',
'placeholder'=>'Harga')) !!}
</div>
<div class="form-group">
{!! Form::label('Gambar') !!}
{!! Form::text('images', null,
array('required',
'class'=>'form-control',
'placeholder'=>'Gambar')) !!}
</div>
<div class="form-group">
{!! Form::submit('Edit',
array('class'=>'btn btn-primary')) !!}
</div>
</div>
{!! Form::close() !!}
我在routes
中使用它(第一个用于存储功能,因此与此更新无关):
Route::post('admin/success','ProdukController@simpan');
Route::resource('admin','ProdukController');
Produk
模型:
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Produk extends Model
{
protected $fillable =[
'nama',
'jumlah',
'harga',
'images'
];
}
答案 0 :(得分:0)
发生这种情况导致具有该ID的数据不会退出$data = Produk::findOrFail($id)
。您可以使用Produk::find($id);
或data = Produk::where('id', $id)->first();
(它不会引发错误)
答案 1 :(得分:0)
您应该在表单开头将id传递给url尝试按以下方式更改它:
{!! Form::model($data,['method'=>'PATCH','route' => ['admin.update', $data->id] ]) !!}