У меня есть две кнопки (редактировать и удалять) в индексном представлении, где я могу правильно редактировать запись, но когда я удаляю запись, форма laravel принимает идентификатор другой записи для удаления.
Это представление:
<div class="row">
@if(App\Player::count()>0)
@foreach($players as $player)
<div class="col-lg-3 col-md-6">
<div class="thumbnail no-padding">
<div class="thumb">
<img src="/cricket/storage/images/players/{{ $player->photo }}" alt="">
<div class="caption-overflow">
<span>
<a href="/cricket/storage/images/players/{{ $player->photo }}" class="btn bg-success-400 btn-icon btn-xs" data-popup="lightbox"><i class="icon-plus2"></i></a>
<a href="user_pages_profile.html" class="btn bg-success-400 btn-icon btn-xs"><i class="icon-link"></i></a>
</span>
</div>
</div>
<div class="caption text-center">
<h6 class="text-semibold no-margin">{{ $player->name }}</h6>
<ul class="icons-list mt-15">
<li><a href="{{ route('players.edit', $player->id) }}" data-popup="tooltip" title="Edit" data-container="body"><i class="fa fa-pencil"></i></a></li>
<li></li><li></li><li></li>
<li>
{!! Form::open(['id' => 'p', 'method' => 'DELETE', 'route' => ['players.destroy', $player->id]]) !!}
<a href="javascript:{}" onclick="document.getElementById('p').submit();" data-popup="tooltip" title="Delete" data-container="body"><i class="fa fa-trash"></i></a>
{!! Form::close() !!}
</li>
</ul>
</div>
</div>
</div>
@endforeach
@endif
</div>
Это метод удаления:
public function destroy($id)
{
$record = Player::find($id);
$filename = $record->photo;
if(Storage::exists('players/' . $filename))
{
Storage::delete($filename);
//return "yyy";
}
$record->delete();
Session::flash('success', 'The record was successfully deleted.');
return redirect()->route('players.index');
}
Я добавил текстовое поле и отобразил идентификатор записи, в которой он показываетправильный идентификатор, как показано на скриншоте ниже, но когда я отправляю форму для удаления, он принимает неправильный идентификатор:
Когда я отображаю идентификатор из метода удаления, он показывает 5вместо 9:
public function destroy($id)
{
return $id;
}
Приведенный выше код возвращает 5, что неверно, он должен вернуть 9, ниже приведен результат оператора return:
Я не знаю, что здесь не так.
Любая помощь приветствуется заранее.