2

StackOverflow は、質問に対してこのスタイルのルートを持っているようです:

/questions/:id/*slug

これは、ルートと の両方で簡単に実現できto_paramます。

ただし、ID だけが渡されると、StackOverflow もそのパスにリダイレクトされるようです。

例:

stackoverflow.com/questions/6841333 

にリダイレクトします:

stackoverflow.com/questions/6841333/why-is-subtracting-these-two-times-in-1927-giving-a-strange-result/

ナメクジのバリエーションについても同じことが言えます

stackoverflow.com/questions/6841333/some-random-stuff

それでも同じ URL にリダイレクトされます。

私の質問は次のとおりです。このタイプのリダイレクトは通常、コントローラーで処理されますか (リクエストをルートと比較します)、または でこれを行う方法はありroutes.rbますか?

ファイルでこれが可能だとは思わない理由routes.rbは、通常、オブジェクトにアクセスできないためです (したがって、ID に基づいてスラッグを取得できませんでしたよね?)

興味のある方は、Rails 3.2.13 とFriendlyIDの使用

4

1 に答える 1