3

Railsアプリでfriendly_idgemを使用して、クリーンなURLを作成しています。うまく機能していますが、このページはterecordidでも取得できます。

例:

スラッグとして「name」のレコードがあります。このレコードのIDは1です。

したがって、ページは2つのURLから取得できます。

domain.com/name

domain.com/1

domain.com/nameのみを使用したいので、domain.com/1からページにアクセスできるようにしたくありません。

誰かがこれを達成する方法を知っていますか?

4

1 に答える 1

7

著者自身から(Googleはあなたの友達です。これは検索時の上位の結果ですfriendly_id disable find idhttps ://github.com/norman/friendly_id/issues/146

FriendlyIdのどのバージョンですか?

4.xでは、findではなくfind_by_slugを使用します。

3.xでは、find_by_cached_slugを使用するか、見つかった結果のfriendly_id_statusを確認し、フレンドリID以外のものを使用してレコードが見つかった場合はエラーを発生させることができます。

findいずれにせよ、列を無視するようにアプリケーションに指示するには、の発生を上記の選択肢の1つに置き換える必要があり:idます。

于 2012-11-11T13:33:44.760 に答える