2016-12-03 81 views
2

我想在Laravel 5.3中構建一個應用程序,我想在數據透視表中添加額外的列數據。以下是我的代碼:如何將數據添加到數據透視表中的其他列laravel

Users型號:

public function relations() 
{ 
    return $this->belongsToMany('App\Plan')->withPivot('child'); 
} 

Plan型號:

public function relations() 
{ 
    return $this->belongsToMany('App\User')->withPivot('child'); 
} 

在我的控制,我取出由Auth::user();和計劃,子元素我的用戶數據正在接受請求。我想將其存儲到我的數據透視表中。以下是我在我的控制器中試過的代碼:

$user = \Auth::user(); 
$plan_id = $request->plan_id; 
$childid = $request->child_id; 
$plan = App\Plan::find($plan_id); 
$user->relations()->attach($plan, ['child' => $childid]); 

幫我在這裏。

回答

3

你應該使用attach()這樣的:

$user->relations()->attach($plan_id, ['child' => $childid]); 
1

嘗試save方法:

$user->relations()->save($plan, ['child' => $childid]); 

Docs

0

兩個saveattach工作。只要attach將返回null,而save將返回$ user對象,當我嘗試用修補程序

相關問題