2017-06-17 17 views
1

3つのテーブルがあります。製品、ユーザー、およびproduct_user product_userテーブルには3つのフィールドがあります。 product_id、user_id、および価格。Laravelは余分なフィールドを持つmanytomanyを添付します

product_idとuser_idが自動的に添付されて入力されます。しかし、私はそれを記入する価格のテキストフィールドがデータベースの価格フィールドに挿入されたい。

添付するときにテキストフィールドを挿入することを意味します。

+0

既にお試しいただいた内容をお知らせください。どのようにこれをやっている? –

+0

Nikolas Diakosavvasのお返事ありがとうございました –

答えて

2

最初にピボットテーブルに余分なフィールドを挿入するには、この余分なフィールドをモデルで指定する必要があります。例このため

:あなたはこのように、この余分なフィールドを添付することができますコントローラで

public function products() 
{ 
    return $this->belongsToMany('App\Product', 'product_user') 
        ->withPivot('price'); 
} 

後にユーザーモデルでは製品モデル

public function users() 
{ 
    return $this->belongsToMany('App\User', 'product_user') 
        ->withPivot('price'); 
} 

、で

$product->users()->attach($user_id, ['price'=> $price ]); 

私はこれがあなたを助けることを望む!

+0

ありがとうございました。 –

+0

何もない男!!!私はあなたを助けてうれしい –

関連する問題