2

わかりました、それで私はここに私が理解できない奇妙なパターンを持っています。

CallListをベースモデルとしてSTIを設定し、City&Stateを継承しています。都市は州に属しています(州には多くの都市があります)。

キャンペーンには多くのコールリストがあるので、それらすべてを表示したいと思います。私はcampaign.call_listsをループし、時にはCities、時にはStatesを取得します。それらにリンクしたいときは

link_to call_list.name, call_list

これらのルートがある場合、これは正常に機能します。

resources :cities, :states

ただし、州内の都市をネストすると、link_toヘルパーは適切なルートを見つけられません。これを行う簡単な方法はありますか、それとも手動でパスヘルパーを構築する必要がありますか?

4

1 に答える 1

0

call_list の種類を確認してから、適切なルートを使用する必要があります。ルートがネストされているため、直接使用することはできません。

link_to call_list.name, call_list.is_a?(City) ? call_list : state_city_path(call_list)
于 2012-02-10T05:33:14.290 に答える