Есть ли способ сделать модули в рельсах 3 как модули Zend Framework?В Zend Framework у вас есть папка 'modules', подобная следующей структуре:
/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?Есть лучший способ сделать вещи такого типа в рельсах?
Спасибо заранее
Как насчет пространств имен контроллера ?
# 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
Это немного похоже на модели и маршруты для Rails 3. Я бы не сказал, что вам нужна конкретная модель для администратора, которая будет расширением модели User.
Руководство по маршрутизации рельсов может дать представление об этом в перспективе.