繁体   English   中英

Laravel插入多个表和多个数据

[英]Laravel Insert Multiple Table And Multiple Data

我在将数据插入到具有1个表格的3个表中时遇到问题。 我想在保存节表后动态获取section_id。 section_id将放在内容表中。

这是我的代码

// insert course
$Course = new Course;
$Course->title = $request->title;
$Course->goal = $request->goal;
$Course->description = $request->description;
$Course->image = $request->image;
$Course->id_category = $request->id_category;
$Course->id_level_course = $request->id_level_course;
$Course->id_author = $request->id_author;
$Course->save();
$Course_id = $Course->id;
// insert course

// insert section
foreach($request->get('section_title') as $index => $value){
  if($value != null){ // check not null request value
    $Section = new Section;
    $Section->title = $value;
    $Section->id_course = $Course_id;
    $Section->save();
    $Section_id = $Section->id;        

  }
}
// insert section

// insert content
   foreach($request->get('content_title') as $index => $value){
      if($value != null){ // check not null request value
        $Content = new Content;
        $Content->title = $value;
        $Content->id_section = $Section_id;
        $Content->save();
      }
    }
// insert content

如果content_titlesection_title是逗号分隔的字符串,那么在传递给foreach循环之前,需要将其explode

$titles = explode(',',$request->get('content_title') );
foreach($titles as $index => $value){
//code
}

您可以在部分之后插入每个内容。

$contents = $request->get('content_title')
foreach($request->get('section_title') as $index => $value){
  if($value != null){ // check not null request value
    $Section = new Section;
    $Section->title = $value;
    $Section->id_course = $Course_id;
    $Section->save();
    $Section_id = $Section->id;        
// insert content
   $title = isset($contents[$index]) ? $contents[$index]: null;
   if($title != null){ // check not null request value
        $Content = new Content;
        $Content->title = $title;
        $Content->id_section = $Section_id;
        $Content->save();
    }
  }
}

//插入部分

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM