Domanda

Ho un'applicazione blog cosa, e vorrei accorciare miei percorsi. Qui ci sono:

Blog::Application.routes.draw do
  resources :categories do
    resources :articles do
      resources :comments
    end
end

A percorsi rastrello il comando a costruire le seguenti righe:

                              GET    /categories/:category_id/articles/:article_id/comments(.:format)          {:controller=>"comments", :action=>"index"}
    category_article_comments POST   /categories/:category_id/articles/:article_id/comments(.:format)          {:controller=>"comments", :action=>"create"}
 new_category_article_comment GET    /categories/:category_id/articles/:article_id/comments/new(.:format)      {:controller=>"comments", :action=>"new"}
                              GET    /categories/:category_id/articles/:article_id/comments/:id(.:format)      {:controller=>"comments", :action=>"show"}
                              PUT    /categories/:category_id/articles/:article_id/comments/:id(.:format)      {:controller=>"comments", :action=>"update"}
     category_article_comment DELETE /categories/:category_id/articles/:article_id/comments/:id(.:format)      {:controller=>"comments", :action=>"destroy"}
edit_category_article_comment GET    /categories/:category_id/articles/:article_id/comments/:id/edit(.:format) {:controller=>"comments", :action=>"edit"}
                              GET    /categories/:category_id/articles(.:format)                               {:controller=>"articles", :action=>"index"}
            category_articles POST   /categories/:category_id/articles(.:format)                               {:controller=>"articles", :action=>"create"}
         new_category_article GET    /categories/:category_id/articles/new(.:format)                           {:controller=>"articles", :action=>"new"}
                              GET    /categories/:category_id/articles/:id(.:format)                           {:controller=>"articles", :action=>"show"}
                              PUT    /categories/:category_id/articles/:id(.:format)                           {:controller=>"articles", :action=>"update"}
             category_article DELETE /categories/:category_id/articles/:id(.:format)                           {:controller=>"articles", :action=>"destroy"}
        edit_category_article GET    /categories/:category_id/articles/:id/edit(.:format)                      {:controller=>"articles", :action=>"edit"}
                              GET    /categories(.:format)                                                     {:controller=>"categories", :action=>"index"}
                   categories POST   /categories(.:format)                                                     {:controller=>"categories", :action=>"create"}
                 new_category GET    /categories/new(.:format)                                                 {:controller=>"categories", :action=>"new"}
                              GET    /categories/:id(.:format)                                                 {:controller=>"categories", :action=>"show"}
                              PUT    /categories/:id(.:format)                                                 {:controller=>"categories", :action=>"update"}
                     category DELETE /categories/:id(.:format)                                                 {:controller=>"categories", :action=>"destroy"}
                edit_category GET    /categories/:id/edit(.:format)                                            {:controller=>"categories", :action=>"edit"}

Come si può vedere, ogni risorsa è ordinato in un albero. Quindi credo che, si potrebbe essere interessante per semplificare le mie vie come ad esempio:

/categories/                                               => /
/categories/:id                                            => /:id
/categories/:category_id/articles/                         => /:category_id/articles
/categories/:category_id/articles/:id                      => /:category_id/:id
/categories/:category_id/articles/:article_id/comments/    => /:category_id/:article_id/comments
/categories/:category_id/articles/:article_id/comments/:id => /:category_id/:article_id/:id

E 'più SECCO, is't vero? :)

La Rails 3 fornisce un modo semplice per farlo, con una mappatura verbi HTTP al controllore automaticamente le azioni? Grazie a chiunque.

È stato utile?

Soluzione

Date un'occhiata a superficiale nidificazione .

Spero che questo aiuti.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top