RESTful many-to-many relationships 创建和更新问题
比如 1 个 team 可以有多个 player,并且 1 个 player 可以属于多个 team,这就形成了 many-to-many 关系。针对这种情况,RESTful 接口该如何设计呢?
先说创建
POST: /teams/1/players/
PUT: /teams/1/players/1/
这两种哪个更合适些呢,我是比较倾向第 2 种。
再说更新,因为是 N:N 的关系,关系表里可能有如下数据
id | team_id | player_id |
---|---|---|
1 | 1 | 1 |
2 | 1 | 2 |
3 | 2 | 1 |
如果我想把 player_id 为 1 并且 team_id 为 2 的改为 team_id 为 3.... 接口如果设计为
PUT: /teams/3/players/1/
也会把 player_id 为 1 并且 team_id 为 1 的修改为 team_id 为 3.... 显然不是我想要的...
该如何设计呢?
推荐文章: