Задать вопрос
Jazzis
@Jazzis
кодер, геймер, переводчик и ещё кто-то

Как сделать вложенные роуты с одной моделью?

Здравствуйте всем, я немножко новичок в рельсах. У меня есть модель "Page", мне нужно было сделать дерево из страниц и под-страниц, т.е. одна корневая страница может иметь несколько подстраниц, в свою очередь подстраницы также могут иметь подподстраницы, и так до бесконечности. Я достиг этого с помощью гема "ancestry".

Также с помощью дополнительного поля "slug" и метода "to_param" я сделал, чтобы в URL'е заместо ID страницы стояло её Name.

Моя проблема состоит в том, что все страницы имеют URL вида: "/page-1-2" или "/page-1-2-1" заместо "/page-1/page-1-2" или "/page-1/page-1-2/page-1-2-1" соответственно.

Что мне нужно сделать или прописать в роутах, чтобы получить такие вложенные URL'ы и чтобы редактирование страниц тоже работало и имело такие URL'ы?
  • Вопрос задан
  • 2303 просмотра
Подписаться 2 Оценить Комментировать
Решения вопроса 1
MpaK999
@MpaK999
Буду!
"/page-1/page-1-2/page-1-2-1" - такое вложение излишнее получается, последний элемент и так содержит указатели на все предыдущие, может все же стоит оставить как есть с одним уровнем?
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@vsuhachev
Здесь. Описываете роут с параметром со звездочкой и потом дополнительно разбираете то что в этот параметр попало
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы