Laravel 5.5 и Sentinel Отсутствуют обязательные параметры

Каждый раз, когда я пытаюсь удалить пользователя, я получаю сообщение «Отсутствуют необходимые параметры для [Route: delUser] [URI: deleteUser / {id}]». Но когда я обновлю страницу, выбранный пользователь будет удален. Я не знаю, почему я получаю эту ошибку.

Вот мой web.php:

Route::get('/deleteUser/{id}',[
'uses' => 'ViewUsersController@deleteUser',
'as' => 'delUser'
]);

ViewUsersController.php:

public function deleteUser($id){

    $user = Sentinel::findById($id);

    $session1 = Session::flash('del_message', 'User has been successfully deleted.');
    $session2 = Session::flash('alert-class', 'alert-success');

    if ($user != null) {
    $user->delete();
    return redirect()->route('delUser')->withSessionone($session1)->withSessiontwo($session2);
    }

    return redirect()->route('delUser')->withMessage("Wrong ID");


}  

viewUsers.blade.php:

<h1> Users </h1>
<table border = '1'>
    <tr>
        <th> First Name </th>
        <th> Last Name </th>
        <th> Email </th>
        <th> Date Registered </th>
        <th> Delete </th>
    </tr>

@foreach($users as $key => $data)
    <tr>
        <td> {{ $data->first_name }} </td>
        <td> {{ $data->last_name }} </td>
        <td> {{ $data->email }} </td>
        <td> {{ $data->created_at }} </td>
        <td><a href = "/deleteUser/{{ $data->id }}">Delete</a></td>
    </tr>
@endforeach
</table>

Я использую laravel 5.5 и дозорный


person Hooman    schedule 02.02.2018    source источник
comment
Я предполагаю, что он удаляется (или нет), тогда вы перенаправляете без параметра id   -  person brombeer    schedule 02.02.2018


Ответы (1)


Когда вы перенаправляете, ожидается маршрут delUser с id как delUser/1, но вы перенаправляете без части идентификатора.

return redirect()->route('delUser')->withMessage("Wrong ID");

Убедитесь, что у вас есть URL-адрес вроде -

Route::get('delUser','SomeConroller@delUserMethod');

Или добавьте id с URL.

person Sohel0415    schedule 02.02.2018