如何处理通过laravel中的axios从vue表单发送的阵列?

如何处理通过laravel中的axios从vue表单发送的阵列?,laravel,vue.js,axios,Laravel,Vue.js,Axios,Hi具有如下所示的vue组件。我使用数组来包含动态数量的输入。然后通过axios将其作为post请求传递给laravel函数。在其中进行处理,并根据该数组中的行数创建多个表行。我用来传递值的数组是ChargeArray 如何处理从laravel函数通过axios发送的数组以创建多个表行 " 添加行 收费 请选择一个 {{charge.name} 总计 提交 导出默认值{ 数据:函数(){ 返回{ 总计:'', 名单:[], 充电器阵列:[ {chargeType:'',编号:'',c

Hi具有如下所示的vue组件。我使用数组来包含动态数量的输入。然后通过axios将其作为post请求传递给laravel函数。在其中进行处理,并根据该数组中的行数创建多个表行。我用来传递值的数组是ChargeArray
如何处理从laravel函数通过axios发送的数组以创建多个表行

"


添加行
收费
  • 请选择一个 {{charge.name}
  • 总计 提交

    导出默认值{
    数据:函数(){
    返回{
    总计:'',
    名单:[],
    充电器阵列:[
    {chargeType:'',编号:'',chargedPrice:'',总计:'}]
    }
    },
    安装的(){
    console.log('组件已安装')
    },
    计算:{
    grandTotal:函数(){
    这个。总数=0;
    对于(var i=0;i{
    此.chargeArrays[index].chargedPrice=res.data;
    });
    },
    updateTotal:函数(索引){
    this.chargeArrays[index].total=this.chargeArrays[index].chargedPrice*this.chargeArrays[index].nos;
    },
    fetchPriceList:函数(){
    获取('/api/pricechart')。然后((res)=>{
    this.list=res.data;
    });
    },
    formSubmit:function(){
    axios.post(“/job/create”{
    chargeArrays:this.chargeArrays,
    }).然后(功能(响应){
    控制台日志(响应);
    }).catch(函数(错误){
    console.log(错误);
    });
    }
    }
    }'
    
    看起来您的值名称(camelCase)与您的表列名(charge_type)不匹配,这只是一个猜测,因此您可能需要在数组中循环,如下所示

    $charges = $request->all('chargeArrays');
    foreach($charges as $i => $charge){
      $c = [
          'charge_type'   => $charge['chargeType'],
          'nos'           => $charge['nos'],
          'charged_price' => $charge['chargedPrice'],
          'total'         => $charge['total']
      ];
    
      // insert the data...
      DB::table('the_charge_table')->insert($c);
    }
    

    看起来您的值名(camelCase)与表列名(charge_type)并不匹配,这只是一个猜测,因此您可能需要在数组中循环,如下所示

    $charges = $request->all('chargeArrays');
    foreach($charges as $i => $charge){
      $c = [
          'charge_type'   => $charge['chargeType'],
          'nos'           => $charge['nos'],
          'charged_price' => $charge['chargedPrice'],
          'total'         => $charge['total']
      ];
    
      // insert the data...
      DB::table('the_charge_table')->insert($c);
    }
    

    我通过以下循环得到了答案

    $priceInput=$request->only('chargeArrays');
        foreach($priceInput as $i => $chargeArray){
            foreach ($chargeArray as $j=> $charge) {
                 $c = [
                      'charge_type'   => $charge['chargeType'],
                      'nos'           => $charge['nos'],
                      'charged_price' => $charge['chargedPrice'],
                      'total'         => $charge['total']
                  ];
                  \Log::info($c); 
            }
    
        }
    

    我通过以下循环得到了答案

    $priceInput=$request->only('chargeArrays');
        foreach($priceInput as $i => $chargeArray){
            foreach ($chargeArray as $j=> $charge) {
                 $c = [
                      'charge_type'   => $charge['chargeType'],
                      'nos'           => $charge['nos'],
                      'charged_price' => $charge['chargedPrice'],
                      'total'         => $charge['total']
                  ];
                  \Log::info($c); 
            }
    
        }
    

    您能否添加一个实际发布数组的显示示例?[{chargeType:1,No:3,chargedPrice:200,total:600},{chargeType:3,No:3,chargedPrice:200,total:600}]。就像这个数组是通过Axiosi发送的一样,当我Log::info($request->only('chargeArray')时,我会得到以下结果数组('chargeArray'=>array(0=>array)('chargeType'=>1,'nos'=>1','chargedPrice'=>200,'total'=>200,),1=>array('chargeType'=>2,'nos'=>2,'chargedPrice'=>45,'total'=>90,),)你能添加一个实际发布数组的显示示例吗?[{chargeType:1,nos:3,chargedPrice:200,total:600},{chargeType:3,nos:3,chargedPrice:200,total:600}]。就像这个数组是通过axioswhen I Log::info发送的一样($request->only('chargeArray'))我得到以下结果数组('chargeArray'=>array(0=>array('chargeType'=>1,'nos'=>1,'chargedPrice'=>200,'total'=>200,),1=>array('chargeType'=>2,'nos'=>2,'chargedPrice'=>45,'total'=>90,),),)local.ERROR:ErrorException:Undefined index:chargeType in/home/dc/projects/quote/app/Http/Controllers/JobController.php:27我收到了这个错误,很抱歉我看不到请求数组将如何返回。local.ERROR:ErrorException:Undefined index:chargeType in/home/dc/projects/quote/app/Http/Controllers/JobController.php:27我收到此错误很抱歉,我无法准确看到请求数组将如何返回。我很高兴您能够正常工作。很不幸,我给了您工作,但您发布了自己的答案,并将我的答案的90%复制粘贴。如果您将“ChargeArray”添加到
    ->all()中
    函数我相信它会起作用。如果我的代码是有用的,并且现在随着我的更新而起作用,我将感谢您的赞扬。仅供参考我相信函数在Laravel 5.5中是新的。感谢您的努力,我很高兴您能使用它。不幸的是,我给了您这项工作,但您发布了自己的答案,其中90%是我的答案的副本和粘贴。如果您愿意在
    ->all()中添加“chargeArrays”
    函数我相信它会起作用。如果我的代码对我有所帮助,并且现在随着我的更新而起作用,我将不胜感激。仅供参考,我相信“唯一()”函数在Laravel 5.5中是新的。感谢您的努力