Интерфейс Admin в направляющих

Мне определили местоположение администраторского контроллера в controllers/admin/admin_controller.rb Мне также определили местоположение контроллера страниц в controllers/admin/pages_controller.rb pages_controller.rb наследовался admin_controller.rb в routes.rb у меня есть администраторское пространство имен как таковое:

map.namespace :admin do |admin|
   admin.resources :pages
end
  • Я хочу администратора, имеют основную функциональность CRUD в pages_controller.rb (Я знаю, как сделать это),
  • Я хочу index и show методы, чтобы быть доступным, чтобы выйти напрямую пользователей
  • Я хотел бы, чтобы шоу и индексные действия использовали отдельные представления, но тот же код.

Вопросы:

  • Если я создаю новое pages_controller для фронтенда или доли методы index и show?
  • Если бы доля, как я отобразил бы отдельные представления в зависимости от того, является ли URL /admin/pages или /pages
  • Если доля, должен я помещать pages_controller в /controllers/admin (где это теперь), или только в /controllers?

Большое спасибо.

5
задан Yuval Karmi 15 March 2010 в 06:23
поделиться

1 ответ

Я бы держал их отдельно. Хотя логика, может быть, та же, сейчас это две разные вещи. Их разделение поможет вам в обеспечении безопасности и позволит вам вносить изменения позже, если это необходимо. Например, вы можете решить, что при загрузке страницы запрос администратора также должен: включать что-то еще и т. Д. В маршруты вы можете добавить:

map.resources :pages, :only => [:index, :show]

Your будут представления для каждой пары действие / контроллер, например один в view / admin / pages и один в / view / pages. Если эти два дублируют код, распакуйте его на части и визуализируйте их обоих.

3
ответ дан 15 December 2019 в 06:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: