【发布时间】:2017-04-24 01:29:01
【问题描述】:
我正在构建一个具有如下资源设置的应用:
User
Team
Invite
Project
Invite
users 有一个team。 teams 有很多 projects。 users 可以被邀请加入teams 级别(并且可以访问teams 拥有的任何projects)或project 级别邀请(仅允许被邀请者访问单个项目) .
我正在尝试设置邀请以动态查找其父资源(即:Team 或 Project)。据我了解,最好的方法是查看路径。目前路径看起来像:
/teams/:id/invites//teams/:id/projects/:id/invites
是否可以从路径中的当前资源向后查看一个“嵌套级别”以在控制器操作中找到父资源(例如:invites#new)?
谢谢!
澄清
我希望能够为teams 和projects 资源使用相同的invites 代码。当调用invites#new 操作时,它会检查路径以查看调用它的资源。如果路径是/teams/:id/invites/,它将返回team,然后我可以通过:id找到,如果路径是/teams/:id/projects/:id/invites,它将返回project,然后我可以通过:id找到。
这可能吗?
【问题讨论】:
-
你的邀请模型是多态的吗?
-
@leiliu 是的。应该提到这一点!
标签: ruby-on-rails routes rails-routing