我试图通过获取数据的ID并使用get route传输来从我的表雇员中删除数据,但是我收到以下错误
Builder.php第125行中的ModelNotFoundException:没有查询结果 model [App \ employe]。
她是我的路线
Route::get('/delete/{employe}', 'EmployeController@delete');
Route::post('/delete', 'EmployeController@handleDelete');
我有一个名为employe的模型来访问我的表
<?php namespace App;
use Illuminate\Database\Eloquent\Model;
class employe extends Model {
protected $fillable = array('fname','lname','age','sex','phone','email','houseno','city','kebele','state','username','password','workposition','salary','bankaccount','bankname','contactid','employedate');
}
我的控制器的一部分,用于删除
public function delete(employe $employe)
{
// Show delete confirmation page.
return View('deleteemploye', compact('employe'));
}
public function handleDelete()
{
$employe = employe::findOrFail(Input::get('employe'));
$employe->delete();
return Redirect::action('EmployeController@index');
}
她是我删除文件的视图
@extends('app')
@section('content')
<div class="page-header">
<h2>Delete {{$employe->fname}} Are you sure?</h2>
</div>
<form action="{{ action('EmployeController@handleDelete') }}" method="post" role="form">
<input type="hidden" name="_token" value="{{ csrf_token() }}">
<input type="hidden" name="employe" id="employe" value="{{ $employe->id }}" />
<input type="submit" class="btn btn-default" value="Yes" />
<a href="{{ action('EmployeController@index') }}" class="btn btn-default">No</a>
</form>
@stop
答案 0 :(得分:1)
看起来laravel无法找到你传递的主键的模型。检查数据库,看看它是否存在。如果是,请检查deleted_at
字段。如果它有一个日期,则表示它已被删除。您仍然可以使用withTrashed()
$employe = employe::withTrashed()->findOrFail(Input::get('employe'));
如果您为此模型启用了软删除,则可以通过运行
完全删除给定的行$employe = employe::withTrashed()->findOrFail(Input::get('employe'))->forceDelete();