Rails вложенный URL вопрос - PullRequest
0 голосов
/ 15 мая 2010

У меня проблемы с RESTful URL в Rails.

У меня есть url site.com/services, и я хочу иметь подстраницы в этой категории, вот так: site.com/services/arquitecture, site.com/services/plumbing и т. Д.

Страницы, которые я обслуживаю в этой категории, являются "статическими" .rhtml файлами, и я бы хотел, чтобы они находились на одном контроллере.

Есть ли способ сделать это? Я пробовал вложенные ресурсы, но мне трудно полностью понять.

Спасибо

Ответы [ 2 ]

0 голосов
/ 15 мая 2010

Вот один из простых подходов к этому.

Предполагая, что в вашем файле rout.rb имеется ресурс "services", вам не нужны вложенные ресурсы - просто добавьте хэш: members в определение маршрута:

map.resources :services, :member => {:plumbing => :get, :arquitecture => :get, ...}

затем определите пустые действия в контроллере служб для каждой статической страницы. Вы можете использовать кэширование страниц для этих страниц, если они действительно статичны, и Rails полностью обойдёт контроллер после первого вызова каждого действия.

0 голосов
/ 15 мая 2010

Ресурсы не были созданы для обслуживания статических страниц. Используйте обычные маршруты без RESTful, где вы можете точно определить, какие URL-адреса соответствуют какому контроллеру и действию.

...