22

Rails 3 を使用しており、EquipmentGroup と Reservation の 2 つのモデルがあります。次のような URL でアクセスできるように、予約を機器グループのネストされたリソースにしたいと考えています。

/equipment_groups/:equipment_group_id/reservations/:id

ただし、機器グループのルートを作成したくありません。次の方法でこれを達成できますが、ハックのようです:

resources :equipment_groups, :only => [] do
  resources :reservations
end

これを行うより良い方法はありますか?ドキュメントで簡単に答えを見つけることができないようです。

4

2 に答える 2

0

これを行うにはいくつかの方法が考えられます。1つの方法は、上記で行ったことです。ただし、機器グループのコントローラーやそのアクションを公開する必要はないようです。そのため、次のように問題なく実行できます。

scope "/equipment_groups" do
    resources :reservations
end

ブロックは、その中のscopeすべてのルートに「/equipment_groups」を追加します。これは本質的にネストされたルートを「偽造」します。

于 2011-09-01T03:33:27.683 に答える