레일즈 3을 사용하고 있으며 EquipmentGroup과 Reservation의 두 모델이 있습니다. 그러나, 나는 장비 그룹에 대한 경로를 생성하지 않으중첩 된 경로 사용하기 실제로는 상위 리소스에 대한 액세스를 허용하지 않고 레일즈 3
/equipment_groups/:equipment_group_id/reservations/:id
: 내가 좋아하는 URL을 액세스 할 수 있도록 내가 예약 장비 그룹의 중첩 된 자원되고 싶어요. 나는 다음을 통해이를 달성 할 수 있지만, 해킹처럼 보인다 :
resources :equipment_groups, :only => [] do
resources :reservations
end
이 작업을 수행 할 수있는 더 나은 방법이 있나요? 설명서에서 쉽게 답변을 찾을 수없는 것 같습니다.
'resources' 대신'scope'을 사용하면 URL 생성의 마법을 잃게됩니다. 예를 들어,'equipment_group_reservation_path (@equipment_group, @reservation)'는 작동하지 않습니다. 나는 그 문제 자체에서 제안 된 해결책을 선호하며, 나는 그것을 해킹으로 간주하지 않는다. –
이것은 작동하지 않습니다! 이 방법을 사용하면 유사하지만 부모 ID가없고 경로를 생성하는 데 도움이되는 경로는 갖게됩니다. – kaleb4eg