2017-09-17 2 views
1

Y a-t-il un moyen de changer le nom des routes que mon échafaudage a créées? J'ai fait un échafaud pour Cars. Actuellement, j'ai resources :cars dans mes itinéraires. Comment puis-je changer les routes de sorte que mon URL affiche http://localhost:3000/transportation au lieu de http://localhost:3000/cars? Je n'ai pas besoin de changer le nom de l'entité dans mon schéma, tout ce que je veux changer sont les routes qui y sont associées. Comment puis-je m'y prendre?Modifier le nom des routes d'échafaudage

N'y a-t-il pas d'autre moyen d'y parvenir que de faire un pour chacun? Ex:

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

Qu'avez-vous essayé et qu'est-ce qui ne fonctionne pas? –

+0

@ Зелёный J'ai modifié mon message. Merci! – Acrux

Répondre

1

Vous pouvez définir la nouvelle route après la resources créée par votre échafaudage pour répondre à votre contrôleur de voitures et de l'action d'index, ou tout autre autre, en fonction de ce que vous voulez atteindre.

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

Si vous voulez appliquer pour tous vos itinéraires sur l'échafaud de voiture, alors vous pouvez passer une option de chemin:

resources :cars, path: 'transportations' 

De cette façon, les routes pointant vers la voiture ne seront pas disponibles et sera remplacé pour les transports.

1

Vous pouvez redéfinir les itinéraires de ressources avec des URL personnalisées en passant une chaîne de votre choix avec l'option :path ainsi que sa définition d'itinéraire dans routes.rb

resources :cars, :path => "transportation" 

Avec cette définition de la route, l'accès à cars ressources dans votre application être routé vers ces URL

 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