Почему не удалили записи таблицы данных в Laravel 5.6 - PullRequest
0 голосов
/ 11 ноября 2018

в приложении Laravel 5.6 У меня есть следующая функция контроллера для удаления записей таблицы транспортных средств,

public function deleteOneAd($id)
    {
 DB::table('vehicles')
            ->where('id', $id)

            ->delete();
 return redirect()->back();  

ссылка на кнопку удаления -

href="/myads/{{$vehicule->id}}/delete" onclick="return confirm('Are you sure to want to delete this record?')" >Delete</a></td>

и маршрут для удаления,

Route::get('myads/{id}/delete', [
    'uses' => '\App\Http\Controllers\VehicleController@deleteOneAd',
]);

но когда я нажимаю кнопку удаления и подтверждаю сообщение javascript для удаления записей, оно не работает. Я имею в виду, что это не удаление.

файл лезвия myads пожалуйста, смотрите вид лезвия myads

@forelse( $vehicles as $vehicule )


                    @if( $vehicule->uploads->count() > 0 )
                        <a href="{{ route('vehicles.show', $vehicule->id) }}">
                            @php
                                $upload = $vehicule->uploads->sortByDesc('id')->first();
                            @endphp
                            <img src="/images/{{ $upload->resized_name }}"></a>
                            {{$vehicule->provincename}}
                          {{$vehicule->milage}}
<br>

                           <td><a class="button is-outlined" href="{{route('vehicles.edit',$vehicule->id.'/edit/')}}" >Edit</a></td>
                            <td><a class="button is-outlined" href="/myads/{{$vehicule->id}}/delete" onclick="return confirm('Are you sure to want to delete this record?')" >Delete</a></td>
                        </a> 
                        <hr>
                    @endif

            @empty
                <td>No Advertisment to display.</td>
            @endforelse

1 Ответ

0 голосов
/ 11 ноября 2018
Route::get('myads/{id}/delete', [
    'uses' => '\App\Http\Controllers\VehicleController@deleteOneAd',
]);

Вы должны добавить / до myads/{id}/delete просто добавив / в начале любого URL-адреса, он становится абсолютным URL-адресом, и к нему можно получить доступ к абсолютному месту из любого места, например, если вы находитесь на локальной странице: 8000 / home page и нажали ссылку, с которой связан myads/{id}/delete перенаправит на localhost:8000/home/myads/{id}/delete, что приведет к конфликту с маршрутом, который вы упомянули в маршруте, и даст нежелательные результаты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...