2012-09-16 59 views
0

我爲「帖子」設置腳手架並希望使用ActiveAdmin編輯和創建新腳本。更改新路線和編輯

在我的routes.rb文件我有崗位設置是這樣的:

resources :posts 

我想,當有人去「/職位/新」重定向到「/管理/職位/新」 編輯也是一樣。從'/ posts /:id/edit'到'/ admin/posts /:id/edit'

如何在更改新建和編輯時保持其他路線相同?

編輯

這裏是我的 「耙路線」

tags GET  /tags(.:format)       tags#index 
          POST  /tags(.:format)       tags#create 
        new_tag GET  /tags/new(.:format)      tags#new 
        edit_tag GET  /tags/:id/edit(.:format)     tags#edit 
         tag GET  /tags/:id(.:format)      tags#show 
          PUT  /tags/:id(.:format)      tags#update 
          DELETE  /tags/:id(.:format)      tags#destroy 
       admin_root   /admin(.:format)       admin/dashboard#index 
batch_action_admin_admin_users POST  /admin/admin_users/batch_action(.:format) admin/admin_users#batch_action 
     admin_admin_users GET  /admin/admin_users(.:format)    admin/admin_users#index 
          POST  /admin/admin_users(.:format)    admin/admin_users#create 
     new_admin_admin_user GET  /admin/admin_users/new(.:format)   admin/admin_users#new 
    edit_admin_admin_user GET  /admin/admin_users/:id/edit(.:format)  admin/admin_users#edit 
      admin_admin_user GET  /admin/admin_users/:id(.:format)   admin/admin_users#show 
          PUT  /admin/admin_users/:id(.:format)   admin/admin_users#update 
          DELETE  /admin/admin_users/:id(.:format)   admin/admin_users#destroy 
      admin_dashboard   /admin/dashboard(.:format)    admin/dashboard#index 
    batch_action_admin_posts POST  /admin/posts/batch_action(.:format)  admin/posts#batch_action 
       admin_posts GET  /admin/posts(.:format)     admin/posts#index 
          POST  /admin/posts(.:format)     admin/posts#create 
      new_admin_post GET  /admin/posts/new(.:format)    admin/posts#new 
      edit_admin_post GET  /admin/posts/:id/edit(.:format)   admin/posts#edit 
       admin_post GET  /admin/posts/:id(.:format)    admin/posts#show 
          PUT  /admin/posts/:id(.:format)    admin/posts#update 
          DELETE  /admin/posts/:id(.:format)    admin/posts#destroy 
    batch_action_admin_tags POST  /admin/tags/batch_action(.:format)  admin/tags#batch_action 
       admin_tags GET  /admin/tags(.:format)      admin/tags#index 
          POST  /admin/tags(.:format)      admin/tags#create 
      new_admin_tag GET  /admin/tags/new(.:format)     admin/tags#new 
      edit_admin_tag GET  /admin/tags/:id/edit(.:format)   admin/tags#edit 
       admin_tag GET  /admin/tags/:id(.:format)     admin/tags#show 
          PUT  /admin/tags/:id(.:format)     admin/tags#update 
          DELETE  /admin/tags/:id(.:format)     admin/tags#destroy 
batch_action_admin_comments POST  /admin/comments/batch_action(.:format) admin/comments#batch_action 
      admin_comments GET  /admin/comments(.:format)     admin/comments#index 
          POST  /admin/comments(.:format)     admin/comments#create 
      admin_comment GET  /admin/comments/:id(.:format)    admin/comments#show 
    new_admin_user_session GET  /admin/login(.:format)     active_admin/devise/sessions#new 
     admin_user_session POST  /admin/login(.:format)     active_admin/devise/sessions#create 
destroy_admin_user_session DELETE|GET /admin/logout(.:format)     active_admin/devise/sessions#destroy 
     admin_user_password POST  /admin/password(.:format)     active_admin/devise/passwords#create 
    new_admin_user_password GET  /admin/password/new(.:format)    active_admin/devise/passwords#new 
    edit_admin_user_password GET  /admin/password/edit(.:format)   active_admin/devise/passwords#edit 
          PUT  /admin/password(.:format)     active_admin/devise/passwords#update 
        posts GET  /posts(.:format)       posts#index 
          POST  /posts(.:format)       posts#create 
        new_post GET  /posts/new(.:format)      posts#new 
       edit_post GET  /posts/:id/edit(.:format)     posts#edit 
         post GET  /posts/:id(.:format)      posts#show 
          PUT  /posts/:id(.:format)      posts#update 
          DELETE  /posts/:id(.:format)      posts#destroy 
         root   /          posts#index 

回答

0
get "/posts/new" => redirect("/admin/posts/new") 
get "/posts/:id/edit" => redirect("/admin/posts/:id/edit") 
resources :posts 
+0

謝謝!新部分運作良好。您只需將編輯部分更改爲:獲取「/ posts /:id/edit」=>重定向(「/ admin/posts /%{id}/edit」)。該「:ID」重定向的部分必須使用此格式「%(編號)」 –

0

也許你可以redirect_to內編輯和新方法。

1

嘗試這樣的事情

# config/routes.rb 
resources :posts, except: [:new, edit] do 
    get 'new' => redirect("/admin/posts/new"), :on => :collection 
    get 'edit' => redirect("/admin/posts/:id/edit"), :on => :member 
end 

PS請添加$ rake routes你的問題使我的代碼示例更清晰。

+0

編輯部分的工作很好,當我改變了重定向:ID爲%{ID} ...但我不能讓「新'部分工作。我一直得到「的ActiveRecord :: RecordNotFound在PostsController#顯示 無法與ID =新發現郵報」 ......所以我只是UGIS的回答去。謝謝。 –