indilog

Ruby/Rails/React/Goなどに関して自分が勉強したことなどを投稿しています

gretelって名前がメルヘンだけどパンくずリスト作りに便利

パンくずリストの実装って結構面倒くさそうだなって思ってたけど、gretelはなんて素敵gemなんだろうと思った。 github.com

使ってみた

READMEにもかいてあるけど、おもむろに

Gemfile

gem "gretel"

と書いて bundle install

次に設定ファイルを rails generate gretel:install で生成。

生成される config/breadcrumbs.rb に対して色々と設定を入れていけば良い感じ。

config/breadcrumbs.rb

# ページのルート
crumb :root do
  link <表示させたい文字列>, root_path
end

# 以下みたいなのをパンくずリストに表示させたい塊に対して書く
crumb :<パンくずのシンボル用文字列> do
  link <表示させたい文字列>, <リンク先パス>
end

のように記述する。

あとは各ページに対して

<% breadcrumb :<パンくずのシンボル用文字列> %>

パンくずリストを表示させたい箇所で記述するのと、

app/views/layouts/application.html.erb

<%= breadcrumbs style: :bootstrap" %>

と書いてしまえば bootstrap スタイルの素敵なパンくずができちゃいます。便利ですね!