我想在 Laravel 中有兩個模型相互關(guān)聯(lián)。一次旅行可以有多個用戶,一個用戶可以進(jìn)行多次旅行。模型是這樣設(shè)置的。class Trip extends Model { public function users() { return $this->belongsToMany('App\User', 'trip_user', 'user_id', 'trip_id'); }}class User extends Model { public function trips() { return $this->belongsToMany('App\Trip', 'trip_user', 'trip_id', 'user_id'); }}數(shù)據(jù)透視表稱為“trip_user”,具有用戶和行程的 ID。當(dāng)我嘗試通過以下方式獲得旅行用戶時$oTrip->users()我得到屬于許多關(guān)系BelongsToMany {#267 ▼#table: "trip_user"#foreignPivotKey: "user_id"#relatedPivotKey: "trip_id"#parentKey: "id"#relatedKey: "id"#relationName: "users"#pivotColumns: []#pivotWheres: []#pivotWhereIns: []#pivotValues: []+withTimestamps: false#pivotCreatedAt: null#pivotUpdatedAt: null#using: null#accessor: "pivot"#query: Builder {#266 ?}#parent: Trip {#259 ?}#related: User {#264 ?}-currentlyAttached: null}當(dāng)我做$oTrip->users我得到一個空的集合。我可以確認(rèn)表中確實(shí)有一個具有正確行程 ID 和一些用戶 ID 的條目??赡苡惺裁磫栴}?
1 回答

慕仙森
TA貢獻(xiàn)1827條經(jīng)驗(yàn) 獲得超8個贊
來自 Laravel 文檔:
第三個參數(shù)是您在其上定義關(guān)系的模型的外鍵名稱,而第四個參數(shù)是您要加入的模型的外鍵名稱
我相信你已經(jīng)把它們換了。嘗試在多對多關(guān)系中將 trip_id 與 user_id 交換
- 1 回答
- 0 關(guān)注
- 150 瀏覽
添加回答
舉報
0/150
提交
取消