MethodNotAllowedHttpException в строке RouteCollection.php 207 Laravel

Я новичок в laravel, и у меня есть проблема, и я не могу ее решить. Я уже видел официальную документацию, а также некоторые другие вопросы прямо здесь, но я не могу их решить.

Чего я хочу добиться, так это обновления базы данных, но, поскольку мне это не удалось, я просто пытаюсь отправить ответ с некоторым сообщением, что я тоже не могу заставить его работать. Пробую через ajax, хочу отправить информацию на контроллер и там выполняется обновление, в этом случае он отвечает простым сообщением...

Это мой маршрут:

Route::patch('pdv/inventario-transferencia/{store}/{idTran}/update', 'InventoryController@editQtTemp');

Это мой код, который выполняется нажатием кнопки:

$('.btn-qtyTemp').click(function(e) {
    //ADAN
    e.preventDefault();
    id_el = $(this).data('id');
    valInput = document.getElementById('input-'+id_el).value;      
    el = id_el.replace("quantityTemp-", "");
    var  valueIdTran = parseInt(el);
    if (!isNaN(valueIdTran)) {

         $.ajaxSetup({
            headers: {
                'X-XSRF-Token': $('meta[name = "_token"]').attr('content')
            }
        });

        $.ajax({
            type: 'patch',
            url: location.pathname + '/' + el + '/update',
            dataType: 'json',
            data: {
                isValInput: valInput
            },
            beforeSend: function () {
                console.info('entrando');
            },
            success: function (data) {
                console.info('Todo Correcto'+data.isId);
            },
            error: function (data) {
                console.info('Algo anda mal'+data.isId);
            }
        });
    }
    //      alert('id_el: '+id_el+' el: '+el+' value: '+valueIdTran+' val: '+valInput);
});  

И это функция контроллера:

public function editQtTemp(Request $request, $store, $idTran) {


       if ($request->ajax()) {

            $this->validate($request, [
                'isValInput' => 'required'
            ]);

            //
            $isValInput = $request->input('isValInput');

            if ($isValInput=='') {
                # code...
                return response()->json([
                    'isId' => ['Valor Invalido']
                ], 422);
            }
            else {
                return response()->json([
                    'isId' => [$isValInput]
                ], 200);
            }
        }
}

Ошибка, которая появляется у меня, заключается в следующем:

MethodNotAllowedHttpException in RouteCollection.php line 207:


    in RouteCollection.php line 207
    at RouteCollection->methodNotAllowed(array('POST')) in RouteCollection.php line 194
    at RouteCollection->getRouteForMethods(object(Request), array('POST')) in RouteCollection.php line 142
    at RouteCollection->match(object(Request)) in Router.php line 729
    at Router->findRoute(object(Request)) in Router.php line 652
    at Router->dispatchToRoute(object(Request)) in Router.php line 628
    at Router->dispatch(object(Request)) in Kernel.php line 214
    at Kernel->Illuminate\Foundation\Http\{closure}(object(Request))
    at call_user_func(object(Closure), object(Request)) in Pipeline.php line 141
    at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in VerifyCsrfToken.php line 43
    at VerifyCsrfToken->handle(object(Request), object(Closure)) in VerifyCsrfToken.php line 36
    at VerifyCsrfToken->handle(object(Request), object(Closure)) in Pipeline.php line 125
    at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in ShareErrorsFromSession.php line 55
    at ShareErrorsFromSession->handle(object(Request), object(Closure)) in Pipeline.php line 125
    at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in StartSession.php line 61
    at StartSession->handle(object(Request), object(Closure)) in Pipeline.php line 125
    at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in AddQueuedCookiesToResponse.php line 36
    at AddQueuedCookiesToResponse->handle(object(Request), object(Closure)) in Pipeline.php line 125
    at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in EncryptCookies.php line 40
    at EncryptCookies->handle(object(Request), object(Closure)) in Pipeline.php line 125
    at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in CheckForMaintenanceMode.php line 42
    at CheckForMaintenanceMode->handle(object(Request), object(Closure)) in Pipeline.php line 125
    at Pipeline->Illuminate\Pipeline\{closure}(object(Request))
    at call_user_func(object(Closure), object(Request)) in Pipeline.php line 100
    at Pipeline->then(object(Closure)) in Kernel.php line 115
    at Kernel->sendRequestThroughRouter(object(Request)) in Kernel.php line 84
    at Kernel->handle(object(Request)) in index.php line 52

Я понятия не имею, что может происходить, я сделал это на чистом PHP, но с laravel у меня много проблем... Спасибо

На английском, пожалуйста, или задайте свой вопрос на es.stackoverflow.com.

aynber 17.01.2019 20:28

Здравствуйте! Вы можете задать этот вопрос на es.stackoverflow.com.

ajtrichards 17.01.2019 20:29

Однако, судя по коду и сообщению об ошибке, вам может просто понадобиться передать патч _method, поскольку он, похоже, отправляет его как POST. См. laravel.com/docs/master/routing#form-method-spoofing

aynber 17.01.2019 20:31

Не могли бы вы опубликовать соответствующую часть вашего файла маршрутов? Вы уверены, что конечная точка настроена на получение запроса PATCH?

Bruno Rodrigues 18.01.2019 00:18
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
4
43
0

Другие вопросы по теме