パンクズの設定について
どうもどハマりエンジニアです。
パンくずとは、パンくずリストを省略した表現で、ユーザーが今WEBサイト内のどの位置にいるのかを視覚的に分かりやすくするため、上位の階層となるWEBページを階層順にリストアップしてリンクを設置したリストのことを指しています。
このパンくずをサイトに設置してあげることで、
などのメリットがあります。
Gemfile
gem 'gretel'
$bundle install
$rails generate gretel:install
config配下にbreadcrumb.rbというファイルが生成されるので、そこにパンくずの定義を一元化してまとめた後、viewファイルから呼び出します。
config/breadcrumbs.rb
end
crumb :edit_admin_site do
link '設定', edit_admin_site_path
parent :admin_dashboard
end
crumb :admin_users do
link 'ユーザー', admin_users_path
parent :admin_dashboard
end
crumb :admin_user do |user|
link 'プロフィール', admin_user_path(user)
parent :admin_users
end
parentで親を指定してあげることで、前の情報を引き継ぐことができます。
users/show.html.slim
- breadcrumb :admin_user, @user
このように記載してあげるだけで、いい感じに表示してくれるようになります。