ошибка в Route и почему-то не может найти url

Рейтинг: 0Ответов: 1Опубликовано: 24.01.2023
public function employees()
    {
        $employees = Employees::all();
        return view('director.employees', ['employees'=>$employees]);
    }
    public function destroy($id)
    {
        $employees = Employees::find();
        $employees->delete();
        return redirect('/director.employees')->with('status', 'Your Data is Deleted');
    }

}

вот blade файл

<from action="{{route('delete', $employee->id)}}" method="post">
    @method('DELETE')
    @csrf
      <button type="submit" title="delete" class="btn btn-delete btn-form me-3">
         Delete
      </button>
 </from>

и вот rout.php

Route::any('/employees', array(EmployeesController::class, 'employees'))->name('employees');
Route::delete('/delete/{id}', array(EmployeesController::class, 'destroy'))->name('delete');

Ответы

▲ 0

В контролере нужно подправить с

public function employees()
{
    $employees = Employees::all();
    return view('director.employees', ['employees'=>$employees]);
}
public function destroy($id)
{
    $employees = Employees::find();
    $employees->delete();
    return redirect('/director.employees')->with('status', 'Your Data is Deleted');
}

на

public function employees()
{
    $employees = Employees::all();
    return view('director.employees', ['employees'=>$employees]);
}
public function destroy($id)
{
    $employees = Employees::find($id);
    $employees->delete();
    return redirect('/director.employees')->with('status', 'Your Data is Deleted');
}

так же в роутере вместо any лучше использовать match через Callback

Route::match(['get', 'post'], '/', function () {
//});

так как any принимает любой запрос. Документация Laravel route