こんばんは
例えばRailsでブログ記事ページのルーティングを設定するときは
blog/:idみたいに書きます。
そうするとblog/1、blog/2みたいなURLが生成されますが
これをblog/2018-morningやblog/about-myblogみたいに
分かりやすいURLにしてみたいと思います。
色々やり方はありますが
friendly_idというgemを使います。
先ずはgemをインストールします。
gem 'friendly_id'
次にどのmodelのどのカラムをURLにしたいかを指定します。
今回はblogテーブルを持っているとしてカラムは
id 1
title about-myblog
text 私のブログについて紹介します。
とします。
blogモデルにFriendly_idをextendして、URLにしたいカラムを指定します。
class Blog < ApplicationRecord extend FriendlyId friendly_id :title end
後はcontrollerから呼び出します。
class BlogController < ApplicationController @blog = Blog.friendly.find(params[:id]) end
これでURLがblog/about-myblogになりました!