微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Laravel通过ID删除

如何解决Laravel通过ID删除

嘿,我正在尝试删除laravel中的记录,但出现此错误:未定义的变量:行(视图:C:\ xampp \ htdocs \ Laravel \ laravel \ resources \ views \ admin \ addEmployee.blade.PHP)行:<form action="/deleteEmployee/{{ $row->id }}" method="POST">

这里是完整的HTML代码 可能出什么问题了?

     <tbody>
         <!-- displaying all the employees from the database -->
        @foreach($users as $user)
        @if($user->is_admin !== 1)
        <tr>
          <td>{{$user->name}} </td>
          <td>{{$user->email}} </td>
          <td>{{$user->salary}} $</td>
          <td>{{$user->department}} </td>
          <td>
              <a href="/editEmployee{{$user->id}}" class="btn btn-success">EDIT</a>
          </td>
          <td>
              <form action="deleteEmployee/{{ $row->id }}" method="POST">
              {{csrf_field()}}
              {{method_field('DELETE')}}
                <button type="submit" class="btn btn-danger">DELETE</button>
              </form>
          </td>
        </tr>
        @endif
        @endforeach
    </tbody>
</table>

控制器

    class DashboardController extends Controller
{
   //Add employee function in admin dashboard
   public function addEmployee()
   {
       $users = User::all();
       return view('admin.addEmployee')->with('users',$users);
       //return view('adminHome');
   }

   public function editEmployee(Request $request,$id)
   {
      $users = User::findOrFail($id);
      return view('admin.editEmployee')->with('users',$users);
       //return view('adminHome');
   }

   public function updateEmployee(Request $request,$id)
   {
    $users = User::find($id);
    $users -> name = $request -> input('name');
    $users->email = $request->input('email');
    $users->salary = $request->input('salary');
    $users->department = $request->input('department');
    $users->update();

    return redirect('admin/addEmployee')->with('status','Employee record is updated');
   }

   public function deleteEmployee( $id)
   {
      $users = User::findOrFail($id);
      $users -> delete();

      return redirect('addEmployee')->with('status','Employee record is deleted');
   }

}

路线

Route::delete('/deleteEmployee/{id}','Admin\DashboardController@deleteEmployee');

解决方法

因此$row应该是$user。 ?

@foreach ($users as $user)
<form action="/deleteEmployee/{{ $user->id }}">
    {{csrf_field()}}
    {{method_field('DELETE')}}
    <button type="submit" class="btn btn-danger">DELETE</button>
</form>
@endforeach

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。