2010-02-28 24 views
10

Czy istnieje możliwość utworzenia trasy rekurencyjnej w Railsach?Trasy rekurencyjne w szynach

Mam aplikację, która umożliwia administratorowi tworzenie stron. Model strony jest zbiorem zagnieżdżonym, więc każda strona ma nadrzędny_połączenie, dlatego strony są podzielone na drzewa. Model strony wykorzystuje również plugin Friendly ID, aby zapewnić slugs dla każdej strony.

Gdy użytkownik przegląda witrynę, chciałbym, aby zobaczyła strukturę zagnieżdżania w adresach URL - lepiej dla celów wyszukiwarki, a także dla wszystkich użytkowników, którzy mogą chcieć przeglądać witrynę, przerywając adresy URL.

chcę coś wzdłuż linii:

http://example.com/page/page/page/page ... itd

Teraz oczywiście mogę utworzyć zagnieżdżony mapę z powiedzmy 10 gniazd i mamy nadzieję, że strona nie przekroczy ten limit, ale jestem ciekawy, czy jest inny sposób ...

Odpowiedz

11

Możesz odwzorować początkową trasę (/ stronę) do kontrolera, ustawiając "globbing" dla wszystkich końcowych parametrów.

map.connect '/:page/*pages', :controller => 'pages', :action => 'show' 

params [: strony] będzie teraz zawierać tablicę parametrów stronie (pasująca tyle końcowe params jak podać w adresie URL).

Powiązane problemy