在Rails MVC中对控制器和视图进行分组

时间:2010-04-13 16:52:27

标签: ruby-on-rails model-view-controller

我想在这里做类似问题的事情: Grouping Views, Controllers, Models in MVC

但是在Ruby on Rails中。问题是,模型将被分组到一个文件夹中,但控制器和视图将被放在不同的文件夹中,比如admin /和store / folders。

试图在项目中分离这些,但问题是:

  map.connect 'projects/:id', :controller => 'gallery/projects', :action => 'show'
  map.namespace(:gallery,  :active_scaffold => true) do |gallery|
    gallery.resources :projects, :comments
  end

有了这个,gallery_project_path(@project)返回/ gallery / projects / xxx(我希望它是/ projects / xxx)

这可以用Rails吗?

1 个答案:

答案 0 :(得分:2)

如果您只想要/projects路线,则map.namespace不是您想要的选项。尝试只指定控制器的名称

map.resources :projects, :controller => 'gallery/projects'

那应该生成像这样的路线

GET /projects/:id(.:format) {:controller=>"gallery/projects", :action=>"show"}
PUT /projects/:id(.:format) {:controller=>"gallery/projects", :action=>"update"}

您还应该查看RailsGuide:Rails Routing from the Outside In。当我遇到路由问题时,我总是从那里开始。