laravel:无法使用foreach创建多个数据关系

i5desfxk  于 2021-09-29  发布在  Java
关注(0)|答案(1)|浏览(306)

我在使用创建数据时遇到问题‍这个 Maatwebsite/excel‍‍‍ 进口。在我的导入类中,当我尝试 dd 包含子数据的变量其工作正常,但当‍ saveMany() 数据返回null和error。
完整性约束冲突:1048列“说明”不能为空
这是我的密码:

public function collection(Collection $rows) {
    $parent = Parent::create([
        'name' => $this->name,
        'slug' => $this->slug,
        'month' => $this->month,
    ]);

    foreach ($rows as $row) {
        $item = new Child([
            'description' => $row['description'],
            'status' => $row['status'],
        ]);
        $items[] = $item;
    }
    $parent->childs()->saveMany($items);
}
rkkpypqq

rkkpypqq1#

foreach中的$row['description']很可能为空值。
像这样编辑循环代码

foreach ($rows as $row) {
        if(!empty($row['description]))
        {
          $item = new Child([
            'description' => $row['description'],
            'status' => $row['status'],
          ]);
         $items[] = $item;
        }
    }

并编辑最后一行

if(!empty($items))
  $parent->childs()->saveMany($items);

相关问题