зенд-модули как в рельсах

Есть ли способ сделать модули в rails 3, такие как модули zend framework? В zend framework у вас есть папка «модули», подобная следующей структуре:

/application/modules/admin
/application/modules/site
/application/modules/service 

и он маршрутизируется следующим образом:

http://myapp.local/admin
http://myapp.local/service
http://myapp.local/ -- to site module (default).

Как я могу добиться этого в Rails 3? Есть ли лучший способ делать такие вещи в рельсах?

Заранее спасибо


person rizidoro    schedule 10.03.2011    source источник


Ответы (2)


Как насчет пространств имен контроллеров?

                          # URL:
resources :projects       # /projects
resources :people         # /people

namespace "admin" do      # /admin
  resources :projects     # /admin/projects
  resources :people       # /admin/people
end

namespace "service" do    # /service
  resources :what         # /service/what
  resources :ever         # /service/ever
end

Пути контроллера:

app/controllers/projects_controller.rb
app/controllers/people_controller.rb
app/controllers/admin/projects_controller.rb
app/controllers/admin/people_controller.rb
app/controllers/service/what_controller.rb
app/controllers/service/ever_controller.rb

Больше информации здесь:

http://guides.rubyonrails.org/routing.html#controller-namespaces-and-routing

person Jari Jokinen    schedule 10.03.2011

Это немного похоже на Models и Routes для Rails 3. Я бы не сказал, что вам нужна конкретная модель для администратора, это будет расширение модели User.

руководство по маршрутизации рельсов может помочь вам разобраться в этом.

person Caley Woods    schedule 10.03.2011