将数组作为单值存储到数据库中-Laravel

时间:2019-05-17 16:42:41

标签: php laravel

我正在尝试将下面的这个值数组发送到我的数据库,并且出现错误

  

传递给Illuminate \ Database \ Grammar :: parameterize()的参数1必须为数组类型,字符串为

值数组

enter image description here

控制器

SEQUENCE_GENERATOR

模型

 public function store(Request $request, $user_id, $broker_id)
     {
         $get_item_id = $request->all();
         $store_item = $this->patient->store(array_merge($get_item_id, ['user_id' => $user_id], ['broker_id' => $broker_id ]));
         return response()->json(['success' => true, 'data'=> ['items' => $get_item_id)]],200);

     }

当我将图片中显示的数组发布到上面时,我得到了上面的错误。我的代码可能在做错什么?

PS:我正在尝试将protected $fillable = ['item_id']; item[0]存储到数据库中。

新代码

item[1]

结果

item_id列为空,仅返回一行。

1 个答案:

答案 0 :(得分:0)

尝试更新您的for循环以反映您要循环遍历的数组

$get_item_id = $request->all(); // returns {"item_id": ["1", "2"]}
foreach($get_item_id['item_id'] as $data) // data will first be "1" then "2"
{
   // store the data
}