技術

【Rails】RailsでFriendlyURLを設定する

投稿日:

こんばんは

例えば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になりました!

-技術

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

no image

[Angular]複数のクエリパラメータを設定する

こんばんは angularで複数のクエリパラメータを設定したいと思います。 co …

コマンド一つで「20190729」みたいなスラッシュなしの日付を入力したい!

こんにちは。たなかです。 Macで「きょう」と入力すると、今日の日付が予測変換さ …

[ Ionic ] A problem occurred evaluating project ‘:app’. > Failed to apply plugin [class ‘com.google.gms.googleservices.GoogleServicesPlugin’] > For input string: “+”

こんにちは。たなかです。 相変わらずモバイルアプリ開発やっています。 先日、Io …

no image

【ionic 1.2】Native Scrolling

どうも中田です。 2015/12/10にionicの1.2が出ました! http …

JavaScriptでクリップボードにテキストをコピーする!

こんにちは。たなかです。 ブラウザに表示されている、自動採番されたIDをクリップ …