знаете ли вы, как динамически генерировать маршруты, такие как:
... (/:parent_id(/:parent_id(/:parent_id(/:parent_id))))/:id
Я задаю этот вопрос, потому что у меня есть модель Folder
, которая действует как дерево (у нее есть поле parent_id
), а ее метод to_param
возвращает ее name
, которая уникальна в области действия parent_id
. Итак, каждое :parent_id
и событие :id
являются name
. Вот пример пути (с 4 подпапками):
/home/desktop/projects/rails/foobar
... где первый :parent_id
(корень) "home", а :id
- "foobar".
Другой пример маршрута может быть (с 1 подпапкой):
/home/music
... где, как вы можете видеть, params[:parent_id] == 'home'
и params[:id] == 'music'
.
Есть ли чистый способ написать красивый маршрут Rails 3, который обрабатывает такие возможные вложенные маршруты? Спасибо !!