我遇到了Laravel 4和「多對多」查詢關係的問題。 我有四個表:Laravel 4:多對多多關係
- 用戶
- 需求
- 貨幣
- user_needs
User_Needs包含了 「多對多」 用戶和需求之間的關係。描述如下
id - user_id - need_id - currency_id - price
ID是自動增量,PK等等... user_ID的是FK爲用戶表,need_id是FK的需求表,currency_id是FK的當然Currency表。價格是一個浮動。
內Laravel 4個Models文件夾我創建了以下型號
用戶與示範類文件中的belongsToMany功能:
public function needs()
{
return $this->belongsToMany('Need','user_needs','user_id','need_id')->withPivot('price');
}
需要用的功能belongsToMany
public function users()
{
return $this->belongsToMany('User','user_needs','user_id','need_id')->withPivot('price');
}
一切工作正常,如果我只使用這兩個模型,問題是我必須添加「currency_id」,因爲每個用戶都可以爲每個需求設置貨幣,我不知道如何更新我的模型來執行此操作。目前我的貨幣模型目前沒有BelongsToMany,因爲我不知道如何實現它。
Laravel文檔避免的「如何加入具有多對多3桌」這是一個有點討厭的話題......
編輯:如果能夠找到像UserNeeds它會沒有中間模型的解決方案成爲格柵
感謝您的幫助。
似乎很酷的解決方案我現在要試一試。 –