1
URLにレコードのIDと名前があります。パラメータ化されたURLをリダイレクト
def to_param
"#{id} #{name}".parameterize
end
ただし、任意の名前がURLで機能します。私は、次の操作を行うことができますし、私がID-name
にID-anything
をリダイレクトするにはどうすればよい
www.site.com/records/ID-anything-here-works
に動作しますか?
ここは例です。
「製品」モデルと名前が「靴」で、IDが「6」のレコードがあるとします。
urlがこの
products/6-shoe
のように見えます。しかし、このURLはまた、2番目のURLは、最初にリダイレクトよう
products/6-eiufwojfeowjfowef
がどのように私はそれすることができます動作しますか?
def show
@website = Website.find(params[:id])
unless params[:id] == @website.to_param
redirect_to @website, status: 301
end
end
はそれはそれは(名前の過失)今やっているようインスタンスを見つけたが、それはリダイレクト:
def show
@website = Website.find(params[:id])
end
私はあなたの質問を理解していません。あなたはそれを言い換えることができますか? – BKSpurgeon
私はあなたが意味することを理解していると思います。データベースに現在存在する名前を入力するだけですか? – BKSpurgeon
レコード名とレコードIDがデータベースにあります。 IDと名前をURLに入れておきたいと思います。しかし、レコードはIDだけで検索されているようですが、URLの名前に必要なものを入力してレコードを表示できます。 ID-nameにリダイレクトしたい。 – colmtuite