質問: 最近rubyを勉強し始めまして現在ecサイトを作成しており、管理者権限のところでわからなくなってしまったので質問させていただきたいです。 現在ecサイトを製作しているのですが、目標としてあまりgemを使わないようにしております。なのでgemがない場合で管理者権限をつけるやり方を教えていただきたいです。こちらのサイト参考にしました(https://railstutorial.jp/chapters/updating-showing-and-deleting-users?version=3.2#fig-user_model_admin)他にも探したのですが、管理者用のgemを使った記事しか見つけられず行き詰ってしまいました。 やりたいことは特定のページを管理者権限のもつユーザーだけがアクセスできるようにする。です。 現在の状況はusersテーブルにadmin:booleanカラム追加して、usersコントローラーにこちら追加しました ``` before_filter :signed_in_user, only: [:index, :edit, :update, :destroy] before_filter :correct_user, only: [:edit, :update] before_filter :admin_user, only: :destroy def admin_user redirect_to(root_path) unless current_user.admin? end ``` このような感じです。 また、一般ユーザーが管理者権限が必要なページにアクセスした際の対応の仕方なども教えていただきたいです。 以上です。何かアドバイス等だけでもいただけたら幸いです。他にも必要なデータなどありましたらおっしゃってください。 よろしくお願いしますm(._.)m
回答: 自己解決です。 実に低レベルな質問で大変申し訳なく思っておりますが解決方法書かせていただきます。 before_actionに変更、before_action :admin_user, only: [:destroy,:index]みたいに各コントローラーで指定する。 それと質問本文の記述で勝手に許可していないページへにアクセスができなくなる。