Quelles nouvelles dans Rails Edge : Les Shallow routes

Traduction de l'article de Ryan Daigle, What's new in edge rails : Shallow routes

Le système des routes avec Rails est assez malin. Dans une optique d'être le plus descriptif possible, la description des ressources est fait au niveau des URL avec une DSL spécifique pour les routes :

       
map.resources :users do |user|         
  user.resources :articles do |article|
    article.resourcs :comments
  end
end         

Néanmoins, si cette configuration permet de voir les articles disponibles à l'URL /users/1/articles et les commentaires à l'URL /users/1/articles/1/comments, il y a des cas où on voudrais outrepasser cette hiérarchie et accéder directement à la ressource en question. Désormais avec l'option des shallow route, vous le pouvez.

                          
map.resources :users, :shallow => true do |user|
  user.resources :articles do |article|
    article.resources :comments
  end
end         

Cette configuration permet de conserver les routes imbriquées et vous donne accès directement au route comme ceci:

      
articles_path #=> '/articles'                             
comments_path #=> '/comments'                             
article_comments_path(@article) #=> '/articles/1/comments'

Plus besoin de déclarer séparement les routes directes en plus des routes imbriquées. l'option :shallow fait tout les routes nécessaires automatiquement pour vous.

Lun 08 sept 2008 20:11 Publié sous

Mots clés , ,

If you liked this article you can add me to Twitter

Comment Quelles nouvelles dans Rails Edge : Les Shallow routes


RSS Follow me on Twitter