Преобразование массива в строку laravel 5.8 - axios


0

Я пытаюсь обновить поля таблицы настроек своего сайта, используя Laravel 5.8 и axios

но в сообщении об обновлении вызова в Vue файле я получаю эту ошибку в моем преобразовании массива консоли в строку

Я впервые обновляю таблицу, используя vue js

Надеюсь, что вы поможете мне найти причину проблемы в моем коде

Контроллер настроек

public function updateSettings(Request $request,Setting $setting){
    $siteSettings = $request->siteSettings;
    foreach($siteSettings as $key => $req){
        $siteSettingUpdate = $setting->where(namesetting , $key)->get()[0];
        $siteSettingUpdate->fill([value => $req])->save();
    }
    return response()->json($siteSettings);
    //return response()->json([Changed Had Saved Successfully],200);
}

настройки vue

<template>
<div class="card card-info"  style="margin-top: 15px">
    <div class="card-header">
        <h3 class="card-title text-center">Update Site Settings</h3>
    </div>
    <form class="form-horizontal" role="form"  @submit.prevent="updateSettings">
        <input type="hidden" name="_token" :value="csrf">
        <div class="card-body">
        <div class="form-group" v-for="(site,index) in siteSettings">
            <label  class="col-md-2 control-label">{{site.slug}} </label>
            <div class="col-md-12">
                <input type="text" v-if="site.type == 0" class="form-control" :name="site.namesetting" v-model="site.value">
                <textarea v-if="site.type == 1" class="form-control" :name="site.namesetting" v-model="site.value">{{site.value}}</textarea>
                <select v-if="site.type == 2" class="form-control" v-model="site.value" :name="site.namesetting">
                    <option :value="1">Open</option>
                    <option :value="0">Close</option>
                </select>
            </div>
        </div>
        </div>
        <div class="card-footer">
            <button class="btn btn-info">{{ loading ? Saving Please Wait .... : Save Changes }}</button>
        </div>
    </form>
</div>

<script>
export default {
    data(){
        return{
            siteSettings:[],
            loading : false,
            csrf: document.querySelector(meta[name="csrf-token"]).getAttribute(content)
        }
    },
    methods:{
        getSettings(){
            let uri = "/dashboard/getSettings";
            axios.get(uri)
                .then(response =>{
                    this.siteSettings = response.data;
                })
        },
        updateSettings(){
            let url =/dashboard/updateSettings;
            this.loading = true;
            axios.post(url,{siteSettings:this.siteSettings}).then(response =>{
                toastr.success();
            }).catch(err => {
                this.loading = false;
                toastr.error();
            })
        }
    },
    mounted: function mounted() {
        this.getSettings();
    }
}

  •  65
  •  0
  • 11 май 2020 2020-05-11 10:17:32

Ответов пока нет