rails命名空间路由和控制器

时间:2014-05-04 13:50:32

标签: ruby-on-rails controller namespaces routes partials

我无法找出使用以下命名空间处理路由/控制器的最佳方法。 我只想进行以下设置:

.../manage/rooms/  ( <%= @ rooms.number_of_rooms%>, <%= @ rooms.title %> )
.../manage/fuu/     ( <%= @ fuu.id %>...) 
..manage/foo/       ...

我知道这是通过 的routes.rb

namespace :manage do
resources :rooms, :fuu, :foo
end

并在... controller/manage/rooms_controller.rbfuu_controller.rb以及foo...下 例如:

class Manage::RoomsController < ApplicationController

 index
 @rooms = Rooms.all
 end
 def create
 @room = Room.new(room_params)
  if @room.save
   redirect_to [:manage, @room]
  else
   render 'new'
 end
 ...
end

以及controller/manage_controller.rb

下的控制器
class ManageController < ApplicationController
end

所以这是我的问题我喜欢使用@rooms.title...下的所有表单和变量.../manage/rooms/ .../manage/fuu/ ......./manage/index.html.erb

是通过控制器执行此操作的最佳方式,例如渲染部分或更改路线指向的控制器?

感谢!!!

1 个答案:

答案 0 :(得分:0)

我会在这种情况下使用偏见。如果它们都在该命名空间中共享,则将该位置作为manage views目录是有意义的。如果他们没有被命名空间但仍然被共享,我就会创建一个共享的&#39;视图中的目录。