Я написал область администрирования определенного приложения rails, и теперь я готов установить его как собственный раздел на веб-сайте.
Следовательно, это будет / admin
Однако я не хотел, чтобы он был / admin в самом маршруте, я хотел иметь что-то менее распространенное, поэтому я добавил пару дефисов до и после него.
Таким образом, маршрут / -admin- / а пространство имен - Admin.
После настройки с помощью: path_prefix => "/ -admin-" у меня есть следующий блок кода:
map.namespace "/-admin-/", :name_prefix => "", :path_prefix => "/-admin-" do |admin|
Это работает для всехно вместо этого, в выходных данных о маршрутах типа rake вывод выглядит так:
new_page GET /-admin-/areas/:area_id/pages/new(.:format) {:action=>"new", :controller=>"admin/pages"}
edit_admin_page GET /admin/pages/:id/edit(.:format) {:action=>"edit", :controller=>"admin/pages"}
admin_page GET /admin/pages/:id(.:format) {:action=>"show", :controller=>"admin/pages"}
PUT /admin/pages/:id(.:format) {:action=>"update", :controller=>"admin/pages"}
DELETE /admin/pages/:id(.:format) {:action=>"destroy", :controller=>"admin/pages"}
areas GET /-admin-/areas(.:format) {:action=>"index", :controller=>"admin/areas"}
POST /-admin-/areas(.:format) {:action=>"create", :controller=>"admin/areas"}
new_area GET /-admin-/areas/new(.:format) {:action=>"new", :controller=>"admin/areas"}
Обратите внимание, что маршруты с мелким маршрутом имеют префикс / admin /, а не / -admin- / (как и их родительские маршруты)маршруты).
Есть идеи, как это обойти?Это ошибка в рельсах или мне нужно обойти это?Я пытался добавить: path_prefix к каждому вложенному маршруту, но он ничего не делает?
Есть идеи?