LoginSignup
2
3

More than 3 years have passed since last update.

【Rails】ブラウザのページタイトルをページごとに変更する方法

Posted at

目標

スクリーンショット 2020-06-27 10.43.42.png

開発環境

・Ruby: 2.5.7
・Rails: 5.2.4
・Vagrant: 2.2.7
・VirtualBox: 6.1
・OS: macOS Catalina

前提

下記実装済み。

Slim導入

実装

1.application_helper.rbを編集

application_helper.rb
module ApplicationHelper
  # 追記
  def full_title(page_title = '')
    base_title = "Bookers"
    if page_title.empty?
      base_title
    else
      "#{ page_title } | #{ base_title }"
    end
  end
end

【解説】

◎ ベースとなるタイトル(アプリ名等)を設定し、変数へ代入する。

base_title = "Bookers"

◎ 引数で受け取った各ページのタイトルが空の場合はベースタイトルのみを表示する。

if page_title.empty?
  base_title

◎ 引数で受け取った各ページのタイトルが存在する場合は両タイトルを表示する。

else
  "#{ page_title } | #{ base_title }"

page_titleが「本一覧」だとすると、本一覧 | Bookersと表示される。

2.ビューを編集

application.html.slimを編集する。

application.html.slim
/ 変更前
title
  | Bookers

/ 変更後
title
  = full_title(yield(:title))

② 各ページのビューを編集する。

例として、books/index.html.slimのタイトルを設定します。

books/index.html.slim
/ 追記
= provide(:title, '本一覧')
2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3