Ответ 1
Ваш подход - это стандартный подход, нет ничего лучше.
Я использую Rails 3, и у меня есть две модели EquipmentGroup и резервирование. Я хочу, чтобы оговорки были вложенными ресурсами групп оборудования, чтобы я мог получить к ним доступ с такими URL-адресами, как:
/equipment_groups/:equipment_group_id/reservations/:id
Однако я не хочу создавать маршруты для групп оборудования. Я могу добиться этого через следующее, но это похоже на взлом:
resources :equipment_groups, :only => [] do
resources :reservations
end
Есть ли лучший способ сделать это? Я не могу найти ответ легко в документации.
Ваш подход - это стандартный подход, нет ничего лучше.
Я могу придумать несколько способов сделать это. Один из способов - это то, что вы сделали выше. Тем не менее, кажется, что вам не нужно выставлять контроллер групп оборудования или какие-либо его действия, поэтому следующее должно быть очень хорошим:
scope "/equipment_groups" do
resources :reservations
end
Блок scope
добавит "/equipment_groups" к каждому маршруту в нем. Это по существу "подделает" вложенный маршрут.