мой взгляд, как это:Как решить Missing аргумент 2 для App Http Controllers UserController :: destroy() в laravel 5.3?
@foreach($users as $user)
<tr>
<td>{!! $user->id !!}</td>
<td>{!! $user->username !!}</td>
<td>{!! $user->phone !!}</td>
<td>{!! $user->address !!}</td>
<td>
{!! Form::open(['route' => ['users.destroy', $user->id], 'method' => 'delete']) !!}
<div class='btn-group'>
<a href="{!! route('users.edit', [$user->id]) !!}" class='btn btn-default btn-xs'><i class="glyphicon glyphicon-edit"></i></a>
{!! Form::button('<i class="glyphicon glyphicon-trash"></i>', ['type' => 'submit', 'class' => 'btn btn-danger btn-xs', 'onclick' => "return confirm('Are you sure?')"]) !!}
</div>
{!! Form::close() !!}
</td>
</tr>
@endforeach
Мои маршруты \ web.php как это:
Route::get('users/destroy/{year}', '[email protected]')->name('users.destroy.year');
Route::resource('users', 'UserController');
Мой контроллер выглядит так:
public function destroy($id, $year)
{
$user = $this->userRepository->findWithoutFail($id);
if (empty($user)) {
Flash::error('User not found');
return redirect(route('users.index'));
}
$this->userRepository->delete($id);
Flash::success('User deleted successfully.');
// return redirect(route('users.index'));
return redirect(route('users.index.year', ['year' => $year]));
}
Существует существует ошибка, как это:
ErrorException in UserController.php line 205: Missing argument 2 for App\Http\Controllers\UserController::destroy()
И URL выглядит следующим образом: http://localhost/mysystem/public/users/10
При нажатии кнопки удалить, я хочу, чтобы URL выглядит следующим образом: http://localhost/mysystem/public/users/index/2020
Есть ли люди, которые могут мне помочь?
Вы должны указать год, а в ' 'маршрут' => [ 'users.destroy', $ user-> ID]', вы в настоящее время отсутствует один аргумент. –
@Joel Hinz, я изменяю вот так: '{!! Форма :: open (['route' => ['users.destroy', $ user-> id, $ year], 'method' => 'delete']) !!} '. Когда я нажимаю кнопку «Удалить», URL-адрес выглядит следующим образом: «http: // localhost/mysystem/public/users/10? 2020». Таким образом, он не работает –
Похоже, вы также не указали идентификатор пользователя из определения маршрута. –