Laravel по-русски
Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
Всем привет . Решил таки продолжить эту тему . Столкнулся со странным поведением маршрутов . Попробую по порядку , читая документацию и книШки о прелестях Laravel решил воспользоваться этими прелестями .
создал контроллер в artisan
php artisan make:controleer TestController --resourceКонтроллер создается , проблем нет . Теперь создаем маршруты .
Route::resource('tests', TestController::class);запускаем команду
php artisan route:listСписок маршрутов отображается согласно документации .
А вот теперь начинается самое интересное.
Создаю на кнопку или ссылку с указанием имени маршрута например
<a href="{{route('tests.show',['test'=>10])}}">Test Show</a>в контроллере функция show() срабатывает
А если создаю
<a href="{{route('tests.destroy',['test'=>10])}}">Test Destroy</a>То все равно срабатывает ссылка Test Show, т.е в контроллере срабатывает функция show() .
Вопрос- Что я делаю не так ???
Спасибо .
Не в сети
посмотрите внимательнее на route:list
там помимо маршрута указан метод.
для show - get, для destroy - delete, а сам url одинаковый, т.е. разница только в методе запроса.
т.к. a href - это get метод, то и вызывается show в контроллере
Не в сети
посмотрите внимательнее на route:listтам помимо маршрута указан метод.для show - get, для destroy - delete, а сам url одинаковый, т.е. разница только в методе запроса. т.к. a href - это get метод, то и вызывается show в контроллере
Спасибо за ответ , уже разобрался . Сделал через форму
<div>
<form method="POST" action="{{route('blogs.destroy',['blog'=>45677])}}">
@csrf
<button type="submit" class="btn btn-success" name="delete" value="delete">Delete</button>
@method('DELETE')
</form>
</div>Еще раз спасибо , что откликнулись. ![]()
Изменено DzonyBB (14.12.2020 09:16:52)
Не в сети
Страницы 1