Doiya’s blog

日々の進捗を書く雑記ブログ(メインはエンジニアやプログラミング関連)

管理者権限の付与

まずUserモデルにadmin判定用のカラムを追加していた。

class AddRoleToUsers < ActiveRecord::Migration[5.2]
  def change
    add_column :users, :role, :integer, default: 0, null: false, limit: 1
    #一般権限となるdefaultは0としてAdmin権限は1とする。
  end
end

次にenumを用いて

enum role: { general: 0, admin: 1 }

admin(管理者権限)かgeneral(一般権限)を判断できるようにしていた。

bin/rails cで権限をadminからgeneralに変更。

User.first.update_attributes(role: :admin)
User.first.role  →adminになる。

今回はroleの役割をまじで分かってなかった。 そのせいでadminのカラムを変に追加してしまった。 ただ、おかげでようやく課題23に取り組めるようになった。 ここからがスタート!

参考:

activeadminの管理者権限付与の方法(ローカル環境) - その辺にいるWebエンジニアの備忘録

追記(2022/05/09) 本番環境で管理者権限を付与する方法(我流)

heroku run rails c
現場Rails4-5-13のやり方でユーザー作成
(User.create!で作成するやつ)
注
以下の部分は変更する
✖︎admin:true
○role:admin

参考

本番環境(Heroku)でAdminアクセスができなくなってしまった(rails)