나는 데이터베이스에 다중 배열을 삽입하려면 다음 코드를 사용합니다가장 짧은 코드를 만드는 방법은 무엇입니까?
foreach($request->category as $k => $v){
$category[] = array(
"category_id" => $v,
"announcement_id" => $announcement->id
);
}
AnnouncementCategory::insert($category);
따라서, 입력 데이터는 POST 배열 $request->category
입니다. 모델 Announcement
에서
$announcement->categories()->attach($request->category);
내가 가진 : 요청이 열을 일치하는 경우
가public function categories()
{
return $this->hasMany("App\AnnouncementCategory", "announcement_id", "id");
}
hasMany이다.'categories'가있는 곳에'Announcement' 모델로 작업하기 때문입니다. 그것은 작동하지 않습니다 – Darama
정의되지 않은 메서드를 호출하십시오. \ Database \ Query \ Builder :: attach() – Darama
@Darama이 코드는 "belongsToMany"로 정의되어 있습니까? –