1

私のモデルには、地域に属する宿泊施設があります。Friendly_id を使用する、私の機知に富んだルートは次のようになります。

/localities
/localities/:locality-name
/accommodations
/accommodations/:accommodation-name

問題は、宿泊施設の詳細 URL を次のようにしたいことです。

/accommodations/:locality-name/:accommodation-name

また、宿泊施設の地域フィルターもあります。

/accommodations/:locality-name

当然、次を に追加できますroutes.rb

resources :localities do
  resources :accommodations
end

...結果は次のようになります。

/localities/:locality-name
/localities/:locality-name/accommodations
/localities/:locality-name/accommodations/:accommodation-name

しかし、私は宿泊施設が/accommodations地域の下にネストされないようにしたいと考えています。

私が得た最も近いものは、上記をこれに変更することです:

resources :localities, :path => 'accommodations' do
  resources :accommodations, :path => '', :except => :index
end

これは私が望むことを行いますが、物事を逆さまにし、両方のリソースを台無しにします。さらに、 に追加resources :localities, :path => 'localities'することもできますが、 と の両方にroutes.rb地域インデックス ビューが表示されます。そして、これらの URL が、それらが表すもののある種のポータルとして機能することを望みます。/localities/accommodations

では、機知に富んだルートをあきらめるべきでしょうか? それとも解決策はありますか?

ありがとう。

4

0 に答える 0