2011-04-20 72 views
2

我有一个项目&权限模型。Rails - 控制器命名问题

在我的应用程序中,我希望有2个对话框,用于创建权限,修改项目权限和查看权限。

我应该使用什么控制器/方法来避免混淆Rails框架的意图?

感谢

回答

2

什么,你可能需要的是一个ProjectsControllerPermissionsController让事情变得简单,但要确保该权限一个路线嵌套在您的路线:

resources :projects do |project| 
    project.resources :permissions 
end 

有时是有利的,将其命名为Projects::PermissionsController以确保您没有直接使用它,因为它明确表示两者密切相关:

resources :projects do |project| 
    project.resources :permissions, :controller => 'projects/permissions' 
end 

在这种情况下访问权限的唯一方法是给它一个项目的情况下,这适用于线路,也:

link_to('Edit', project_permissions_path(@project)) 
+1

确实在轨道3这条路语法的工作?我知道在版本2和版本3之间改变了很多路由东西。 – brettish 2011-04-20 17:58:39

+0

谢谢Tad,那个模型设置很有意义。使我感到困惑的是我列出的3个用例使用哪些方法?创建权限,修改权限和查看权限 – AnApprentice 2011-04-20 18:17:41

+0

Creating ='new',modify ='edit'和viewing ='show'。 – tadman 2011-04-20 18:43:46