Ruby on Rails中的嵌套资源

时间:2015-02-03 15:27:49

标签: ruby-on-rails ruby angularjs rest rails-api

我一直在使用Rails API和AngularJS开发Web应用程序。作为模特,我有团队和用户。您可以随时向团队添加现有用户。

由于我想从AngularJS向团队添加用户,我想知道哪个路由/控制器应该处理这个动作。 (将现有用户添加到team.users)

这是 PUT api / teams /:id / users 或者 PUT api / teams /:id 甚至 POST 到api / teams /:id /:users

请注意,我不是在这里创建新用户,而是将现有用户添加到团队的用户。

谢谢!

1 个答案:

答案 0 :(得分:2)

以上都不是;我会POST到/memberships

您不是在创建或更新用户,也不是在创建或更新团队。

您正在为用户和团队创建新的加入记录。我会将这种类型的记录称为Membership,并提供用于管理它们的API。当用户加入团队时,它是/memberships的POST。当用户离开团队时,它是/memberships/:id的删除。