ошибка 500 сервера при отправке данных в базу данных через контроллер из vue - PullRequest
0 голосов
/ 18 апреля 2019

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

Вот мой метод Vue:

addRecord(){
            fetch('api/video_call', {
                method: 'post',
                body: JSON.stringify(this.call_detail),
                headers: {
                    'content-type': 'application/json'
                }
            })
            .then(res => res.json())
            .then( data=> {
                this.call_detail.receiver_caller_id = '';
                this.call_detail.sender_caller_id = '';
                this.call_detail.receiver_id= '';
                this.call_detail.sender_id= '';
                this.call_detail.call_received='';
                alert('Test Done');
                this.fetchCallDetail();
            })
             .catch(err => console.log(err));
            }



        }

вот данные, которые я возвращаю из vue:

data(){
        return {
            users: [],
            call_details: [],
            call_detail: {
                id: '',
                receiver_caller_id: '',
                sender_caller_id: '',
                receiver_id: '',
                sender_id: '',
                call_received: ''


            },
            call_detail_id: '',
            pagination: {},
            call_allowed: false

        }
    }

Вот мой маршрут в api.php

Route::post('video_call', 'VideoCallController@store');

И, наконец, вот функция сохранения в контроллере:

public function store(Request $request)
    {
        $record = $request->isMethod('put')?VideoCall::findOrFail($request->call_detail_id):new VideoCall;
        $record->id= $request->input('call_detail_id');
        $record->receiver_id= $request->input('receiver_id');
        $record->sender_id= $request->input('sender_id');
        $record->sender_call_id= $request->input('sender_call_id');
        $record->receiver_call_id= $request->input('receiver_call_id');
        $record->call_recieved=$request->input('call_received');
        if($record->save())
        {
            return new VideoCallResource($record);
        }

    }

Я использовал эти методы в своих предыдущих приложениях для отправки данных из vue в базу данных, и это работало просто отлично. В этом приложении возвращается ошибка.

...