2017-03-04 3 views
0

Das folgende Szenario:Rails Routing: Handhabung mehr verschachtelte Ressourcen

resources :first do 
     resources :second do 
      resources :third do 
       resources :fourth do 
        resources :fifth 
       end 
      end 
     end 
     resources :third do 
      resources :fourth do 
       resources :fifth 
      end 
     end 
    end 

    resources :second do 
     resources :third do 
      resources :fourth do 
       resources :fifth 
      end 
     end 
    end 

    resources :third do 
     resources :fourth do 
      resources :fifth 
     end 
    end 

    resources :fourth do 
     resources :fifth 
    end 

Wie Sie sehen können, habe ich mehrere Ebene von verschachtelten Ressourcen verwenden. Die Art und Weise, wie ich dies eingerichtet fühle fühlt sich hübsch repetitive obwohl.

Gibt es eine Möglichkeit, dies sauberer zu machen?

+1

Ich weiß nicht, was Sie erreichen wollen, aber ich würde Ihnen sehr empfehlen Ihr Routing-Schema zu überdenken. Das Vorhandensein von 5 Ebenen verschachtelter Ressourcen wird extrem umständlich. Ich würde [Jamis Bucks kurze Arbeit] (http://weblog.jamisbuck.org/2007/2/5/nesting-resources) betrachten, die verschachtelte Ressourcen diskutiert. – Mark

+0

@Mark Sie haben Recht. Ich wollte nur wissen, ob es eine Möglichkeit gibt, Doppelungen in Routen theoretisch zu verhindern. Ich plane nicht, Ressourcen vier oder fünf Ebenen zu verschachteln :) – jonhue

Antwort

2

können Sie routing concerns verwenden Vervielfältigung in der Route vermieden werden, z.B .:

concern: :my_concern 
    resources :fourth do 
    resources :fifth 
    end 
end 

resources :third, concerns: :my_concern 
Verwandte Themen