0

私はこのto_paramを使用しています

def to_param
    [id, [first_name.parameterize,last_name.parameterize].join("_")].join("-")
end

次のようなアドレスを生成します

http://www.example.com/users/34-joe_smith

しかし、アドレスをに変更すると

http://www.example.com/users/34-joe_notsmith

それでも、ID34のユーザーに誘導されます。

404ページまたはroot_pathに移動するように強制するにはどうすればよいですか?

4

1 に答える 1

0

検索はユーザーの名前ではなくIDで実行されるため、URLのIDに続く値は実際には気になりません。showアクションを拡張して、id、名、および姓に基づいてユーザーを見つけることができますが、それが非常にクリーンなソリューションになるとは思いません。

代わりに、 Friendly_ID gemを確認することを強くお勧めします。これにより、ごくわずかな構成で、ユーザー名などのpk以外のフィールドを含むきれいなURLを簡単に生成できます。このテーマには優れたレールキャストがあります:friendidを使用したかなりのURL

于 2012-11-05T22:09:58.490 に答える