"Y9szFJQYRcmHpyBB1McOE9tbUoZmshmJHzfV1hMG" "title" => "1" "image" => "2" "itemimages" => arra">
当前位置:Gxlcms > PHP教程 > laravel5一对多的create问题

laravel5一对多的create问题

时间:2021-07-01 10:21:17 帮助过:12人阅读

array:7 [▼
  "_token" => "Y9szFJQYRcmHpyBB1McOE9tbUoZmshmJHzfV1hMG"
  "title" => "1"
  "image" => "2"
  "itemimages" => array:2 [▼
    0 => array:1 [▼
      "image" => "/editor/php/../attached/image/20151203/20151203071049_60053.png"
    ]
    1 => array:1 [▼
      "image" => "/editor/php/../attached/image/20151203/20151203071049_32261.png"
    ]
  ]
  "category_id" => "4"
  "content" => "3"
  "text" => "3"
]

一个表单传递过来一个商品的信息,并且这个商品

        $data=$request->all();
        $data['text']=mb_substr($data['content'],0,64);
        $save=Item::create($data);

商品创建成功,然后需要往图片库里加图片$data['itemimages'],

$save->itemimages()->save($data['itemimages']);//报错
$save->itemimages()->saveMany($data['itemimages']);//报错
$save->itemimages()->create($data['itemimages']);//item_id有值,image为空

后来尝试格式换一下

"itemimages" => array:1 [▼
      "image" => "/editor/php/../attached/image/20151203/20151203071049_60053.png"
  ]

$save->itemimages()->create($data['itemimages']);//成功

那么多张图片怎么办

Item已经定义

public function itemimages(){
    return $this->hasMany("App\Itemimage");
}

回复内容:

array:7 [▼
  "_token" => "Y9szFJQYRcmHpyBB1McOE9tbUoZmshmJHzfV1hMG"
  "title" => "1"
  "image" => "2"
  "itemimages" => array:2 [▼
    0 => array:1 [▼
      "image" => "/editor/php/../attached/image/20151203/20151203071049_60053.png"
    ]
    1 => array:1 [▼
      "image" => "/editor/php/../attached/image/20151203/20151203071049_32261.png"
    ]
  ]
  "category_id" => "4"
  "content" => "3"
  "text" => "3"
]

一个表单传递过来一个商品的信息,并且这个商品

        $data=$request->all();
        $data['text']=mb_substr($data['content'],0,64);
        $save=Item::create($data);

商品创建成功,然后需要往图片库里加图片$data['itemimages'],

$save->itemimages()->save($data['itemimages']);//报错
$save->itemimages()->saveMany($data['itemimages']);//报错
$save->itemimages()->create($data['itemimages']);//item_id有值,image为空

后来尝试格式换一下

"itemimages" => array:1 [▼
      "image" => "/editor/php/../attached/image/20151203/20151203071049_60053.png"
  ]

$save->itemimages()->create($data['itemimages']);//成功

那么多张图片怎么办

Item已经定义

public function itemimages(){
    return $this->hasMany("App\Itemimage");
}

$itemimages=[];
foreach($data['itemimages'] as $v){
    $itemimages[]=new App\Itemimage(['image' => $v['image']),
}

$save->itemimages()->saveMany($itemimages);

人气教程排行