I want to change the route of a resource from "/partner_programms" to "/programmangebot".
is there a way to do it with active_admin without put in my own route to routes.rb?
ActiveAdmin do:
admin_categories GET /admin/categories(.:format) {:action=>"index", :controller=>"admin/categories"}
POST /admin/categories(.:format) {:action=>"create", :controller=>"admin/categories"}
new_admin_category GET /admin/categories/new(.:format) {:action=>"new", :controller=>"admin/categories"}
edit_admin_category GET /admin/categories/:id/edit(.:format) {:action=>"edit", :controller=>"admin/categories"}
admin_category GET /admin/categories/:id(.:format) {:action=>"show", :controller=>"admin/categories"}
PUT /admin/categories/:id(.:format) {:action=>"update", :controller=>"admin/categories"}
DELETE /admin/categories/:id(.:format) {:action=>"destroy", :controller=>"admin/categories"}
when i do
#routes.rb
namespace :admin do
resources :categories, :path=>"Kategorien"
end
i get unnamed routes
admin_categories GET /admin/categories(.:format) {:action=>"index", :controller=>"admin/categories"}
POST /admin/categories(.:format) {:action=>"create", :controller=>"admin/categories"}
new_admin_category GET /admin/categories/new(.:format) {:action=>"new", :controller=>"admin/categories"}
edit_admin_category GET /admin/categories/:id/edit(.:format) {:action=>"edit", :controller=>"admin/categories"}
admin_category GET /admin/categories/:id(.:format) {:action=>"show", :controller=>"admin/categories"}
PUT /admin/categories/:id(.:format) {:action=>"update", :controller=>"admin/categories"}
DELETE /admin/categories/:id(.:format) {:action=>"destroy", :controller=>"admin/categories"}
GET /admin/Kategorien(.:format) {:action=>"index", :controller=>"admin/categories"}
POST /admin/Kategorien(.:format) {:action=>"create", :controller=>"admin/categories"}
GET /admin/Kategorien/new(.:format) {:action=>"new", :controller=>"admin/categories"}
GET /admin/Kategorien/:id/edit(.:format) {:action=>"edit", :controller=>"admin/categories"}
GET /admin/Kategorien/:id(.:format) {:action=>"show", :controller=>"admin/categories"}
PUT /admin/Kategorien/:id(.:format) {:action=>"update", :controller=>"admin/categories"}
DELETE /admin/Kategorien/:id(.:format) {:action=>"destroy", :controller=>"admin/categories"}
Another way would be to rename the resource:
ActiveAdmin.register Partner::Programms, as: 'Programmangebot' do
This changes all references to the resource.
You could add routes via another file as described at Rails Best Practices – split route namespaces into different files . I don't know how you'd remove the existing route.
correct answer of comment:
tried adding admin/Kategorien after ActiveAdmin.routes(self) and got the same result as you, the new routes were unnamed. If I put the admin/Kategorien route above ActiveAdmin.routes(self), then the my Kategorien routes were named, and the ActiveAdmin ones were unnamed.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.