Внутренняя ошибка сервера 500 при создании в laravel с использованием ajax jQuery, неверный формат переменных от ajax до контроллера - PullRequest
0 голосов
/ 10 июля 2019

Я пытаюсь создать новую опцию сервиса при создании счета (счет может иметь много сервисов), это как создание нового тега или категории при написании поста без перезагрузки, но у меня есть эта внутренняя ошибка сервера 500, Я думаю, что проблема в контроллере, потому что он прекрасно работает, когда я комментирую создание в контроллере, проверяются route и csrf, и все, спасибо за помощь!

В моем JavaScript:

var max_service_id = {{$max_service_id}};

$.ajaxSetup({
    headers: {
        'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
    }
});

$("#add_service_button").on("click",function(e){

e.preventDefault();

var service_name = $("input[name=service_name]").val();
var service_category = document.getElementById('service_category').value;
var service_description = $("input[name=service_description]").val();

$.ajax({
    type:'POST',
    url:'/service/add-in-bill',
    dataType: 'json',
    data:{
        name : service_name,
        category_id : service_category,
        description : service_description
    },
    success:function(data){
        if (data.message) {
            //This is error message
            alert(data.message);
        }
        if (data.success) {
            alert(data.success);
            var newService = new Option(service_name, max_service_id, false, true);
            $('.multipleSelect').append(newService).trigger('change');
            max_service_id++;
            $("#add_service_div").hide("fast");  
        }
    }
});

})
});

В моем контроллере:

    $validator = Validator::make($request->all(), [
        'name' => 'required|unique:services',
        'category_id' => 'required',
    ]);
    if ($validator->fails()) {

        return response()->json(['message'=>$validator->errors()->all()]);

    } else {

        // It works fine when i comment this, so i think the problem is something about variables from javascript to php stuff
        Service::create($request->all());

        return response()->json(['success'=>'Create service success !']);

    }

// // Я думаю, что проблема в контроллере, потому что он отлично работает, когда я комментирую "Service :: create ($ request-> all ());"

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