插入对象数组时出错

时间:2018-04-12 00:19:45

标签: laravel-5

我得到一个数组,它必须被扫描并插入我的数据库。

我将在请求中收到的数组示例:

{
"member_id": "1",
 "lista": [
 {
 "member_id": "1",
 "instituicao": "Teste",
 "data_inicio": "2018-04-01T03:00:00.000Z",
 "data_termino": "2018-04-01T03:00:00.000Z",
 "serie": "4",
 "cidade": "Salvador",
 "tipo": "fundamental"
},
{
 "member_id": "1",
 "instituicao": "Teste",
 "data_inicio": "2018-04-09T03:00:00.000Z",
 "data_termino": "2018-04-09T03:00:00.000Z",
 "curso": "Teologia",
 "cidade": "Salvador",
 "tipo": "superior"
 }
]
}

如何在我的控制器中设置扫描并插入银行:

     public function store(AcademicoRequest $request){
        $res= $request->all();
        foreach($res as $value) {
         Academico::create($value);
        }
      return response()->json($res);
      }

尝试插入时,同样失败。

1 个答案:

答案 0 :(得分:0)

主要是猜测,但我不认为array_add是对的。 由于Laravel似乎没有批量插入,因此您可能需要采取这样做。

foreach ($res->lista as $insertAcademic) {
    Academico::create($insertAcademic));
}

不太确定如何显示多个创建的东西。可能需要执行另一个查询或附加create的结果。