Estoy usando Rails 3 y tengo dos modelos EquipmentGroup y Reservation. Quiero reservas para ser un recurso anidado de grupos de equipo para que pueda acceder a ellos con URLs como:Usar rutas anidadas Rails 3 sin permitir realmente el acceso al recurso principal
/equipment_groups/:equipment_group_id/reservations/:id
Sin embargo, no quiero crear rutas para los grupos de equipos. Puedo lograr esto a través de lo siguiente, pero parece un truco:
resources :equipment_groups, :only => [] do
resources :reservations
end
¿Hay una mejor manera de hacerlo? Parece que no puedo encontrar una respuesta fácilmente en la documentación.
Al usar 'scope' en lugar de' resources', se pierde algo de la magia de la generación de url. Por ejemplo, 'equipment_group_reservation_path (@equipment_group, @reservation)' no funcionará. Prefiero la solución sugerida en la pregunta en sí, y no lo considero un hack. –
¡Esto no funcionará! con este enfoque, tendrás una ruta similar pero sin ID padre y sin ayuda para generar rutas. – kaleb4eg