というモデルのコンテンツに関連付けられた URL を展開したいと考えていますProduct
。現時点では、 にアクセスして特定の製品を表示できますproducts/ID
。
製品の URL を拡張して、製品名などの説明的な情報を追加したいと考えています。
私は以前to_param
、以下のように関数 (Product.rb 内)を調整するようにアドバイスされました。
def to_param
"#{id}-#{product_name.parameterize}"
end
ただし、これは現在機能しません。各製品にカーソルを合わせたりクリックしたりすると、各製品に関連付けられた URL が正しく表示されますが、一致する製品が見つかりません。エラーが発生しますno match for ID=ID-specific-product-name
アクセスする/products/id
と、特定のアイテムを正常に表示できます
製品名 ( ) を含むこの長い URL を生成する方法を教えてもらえます:product_name
か?
編集
私のコントローラーのshow
コントローラーアクションは次のとおりです。
def show
@uniqueturbo = Uniqueturbo.find(params[:id])
respond_to do |format|
format.html # show.html.erb
format.xml { render :xml => @uniqueturbo }
end
end