2017-09-17 29 views
1

Gibt es eine Möglichkeit, den Namen der Routen, die mein Gerüst erstellt hat, zu ändern? Ich habe ein Gerüst für Autos gemacht. Zur Zeit habe ich resources :cars in meinen Routen. Wie kann ich die Routen so ändern, dass meine URL http://localhost:3000/transportation anstelle von http://localhost:3000/cars anzeigt? Ich muss den Namen der Entität in meinem Schema nicht ändern, ich möchte nur die zugehörigen Routen ändern. Wie kann ich das tun?Name der Gerüstlinien ändern

Gibt es keinen anderen Weg, dies zu erreichen, aber für jeden etwas zu tun? Ex:

get '/transportation', to: 'cars#index', as: 'cars_index' 
+0

Was haben Sie versucht und was funktioniert nicht? –

+0

@ Зелёный Ich habe meinen Beitrag bearbeitet. Vielen Dank! – Acrux

Antwort

1

Sie können die neue Strecke nach den von Ihrem Gerüst erstellt resources definieren, um Ihre Autos Controller und Index-Aktion oder einem anderen anderen zu reagieren, je nachdem, was Sie erreichen wollen.

resources :cars 
get 'transportation', to: 'cars#index' 

Wenn Sie es für alle Strecken auf dem Auto Gerüst anwenden möchten, dann können Sie einen Pfad Option passieren:

resources :cars, path: 'transportations' 

diese Weise werden die Routen Auto zeigt nicht zur Verfügung und wird für den Transport ersetzt.

1

Sie Ressource Routen mit benutzerdefinierten URLs durch eine Zeichenfolge Ihrer Wahl vorbei zusammen mit :path Option zusammen mit der Routendefinition wird in routes.rb

resources :cars, :path => "transportation" 

Mit dieser Route Definition Zugriff auf cars Ressourcen in Ihrer Anwendung neu definieren an diese URLs weitergeleitet werden

 cars GET  /transportation(.:format)     cars#index 
      POST  /transportation(.:format)     cars#create 
    new_car GET  /transportation/new(.:format)    cars#new 
edit_car GET  /transportation/:id/edit(.:format)   cars#edit 
     car GET  /transportation/:id(.:format)    cars#show 
      PATCH /transportation/:id(.:format)    cars#update 
      PUT  /transportation/:id(.:format)    cars#update 
      DELETE /transportation/:id(.:format)    cars#destroy