2015-02-18 3 views
9

Ich habe eine Route wie:Ressource Routen zu einem benutzerdefinierten Pfad in Schienen abgebildet werden 4

resources :products 

Jetzt habe ich alle meine Code vorhanden ist, sondern müssen nur die Pfade von /products/:action to /items/:action ändern

Ich habe die Rails Docs bereits überflogen, konnte das aber nicht herausfinden. Es sieht sehr einfach aus und sollte einfach sein, aber ich kann es nicht beschreiben.

Die URL ich verwendet wurde: http://guides.rubyonrails.org/routing.html#path-and-url-helpers

+0

Also, hat meine Antwort geholfen? – dgilperez

Antwort

10

Sie Ihre Route so schreiben kann:

resources :products, path: 'items' 

Diese /items Routen mit product_* genannt Helfer generieren, ProductsController verwenden. Schauen Sie sich this part of the Routing Guides an.

7

Es gibt mehrere Möglichkeiten, dies zu erreichen. Eine besteht darin, einfach Ihre Ressource items zu benennen und den Controller mit der Option :controller anzugeben.

resources :items, controller: 'products' 

Dies beginnt eingehende Pfade mit /items aber dem Weg zum ProductsController erkennen. Es erzeugt auch Routenhelfer basierend auf dem Ressourcennamen (z. B. items_path und new_item_path).

Eine andere Möglichkeit ist die Verwendung der :path Option bei der Angabe der Ressource wie von @ dgiperez hingewiesen.

resources :products, path: 'items' 

Dies wird auch mit /items zum ProductsController Anfang Route Pfade aber da die Route Helfer auf dem Ressourcennamen basieren, würden sie auf Produkte (zB products_path und new_product_path)

Reference

basieren