Задать вопрос
@HeartOfProgrammer

Почему не отправляется запрос на редактирования новости?

Третий час не могу решить проблему, есть на сайте новости, и у каждой новости есть кнопки "Удалить" и "Редактировать". Так вот при переходе на страницу localhost:8000/news/1/edit переходить все нормально, но запрос на изменение новости не отправляется.

news это маршрут/1 - это id новости/edit - страница редактирования.

Думал проблема в POST-GET, но нет.

Сама страница "Редактирования" новости:

<div class="edit-news">
        <h2 class="text-center">Редактирование: <b>{{ $news->title }}</b></h2>
        <form method="PUT" action="{{ route('news.update', $news->id) }}">

        <div class="form-group">
            <label for="title">Название:</label>
            <input class="form-control" placeholder="Введите названия" name="title" type="text" required autofocus
            >
        </div>

        <div class="form-group">
            <label for="description">Описание новости:</label>
            <p><textarea name="description" id="description" cols="30" rows="10" required></textarea></p>
        </div>

        <br>

        <div class="form-group">
            <label for="full_description">Полное описание новости:</label>
            <p><textarea name="full_description" id="full_description" cols="30" rows="10" required></textarea></p>
        </div>

        <br>

        <div class="form-group">
            <label for="author">Автор:</label>
            <input class="form-control" placeholder="Введите автора" name="author" type="text" required>
        </div>

        <div class="form-group">
            <input type="submit" class="btn btn-success" value="Сохранить">
        </div>

        </form>
    </div>


Метод update в контроллере NewsController

public function update($id, PublishNewsRequest $requestData)
    {
        $news = News::find($id);

        $news->title = $requestData['title'];
        $news->description = $requestData['description'];
        $news->full_description = $requestData['full_description'];
        $news->author = $requestData['author'];

        $news->save();

        return redirect()->route('news.index');
    }


При попытки изменить новость
выдает вот такую ссылку:

1faf5b074c094eaf8b75936934b514e7.png

Все роуты
7548d0e4c55f48238abed9c9e19d38f5.png
  • Вопрос задан
  • 134 просмотра
Подписаться 1 Оценить Комментировать
Решения вопроса 2
alexey-m-ukolov
@alexey-m-ukolov Куратор тега Laravel
HTML forms do not support PUT, PATCH or DELETE actions. So, when defining PUT, PATCH or DELETE routes that are called from an HTML form, you will need to add a hidden _method field to the form.

https://laravel.com/docs/5.2/routing#form-method-s...
Ответ написан
@KCT
<input type="hidden" name="_token" value="{{ csrf_token() }}">
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы