💎

RailsAdminをインストールして簡単に管理画面を作成する方法

2021/03/30に公開

Ruby on Rails には管理画面をテンプレート的に作成できるgemがいくつかあります。
今回は、カスタマイズ性はそこまで高くはないもののセットアップが簡単な「RailsAdmin」を使って管理画面を作成します。

管理画面を作成する

最初にgemをインストールします。
Gemfileに記述し、bundel installを実行します。

gem 'rails_admin'
$ bundle install
$ rails g rails_admin:install
$ rails g db:migrate

管理画面へアクセス

まずはサーバを起動させます。

$ rails s

ブラウザから、railsの基本画面に "/admin" を後付けしてアクセスします。
初期設定であれば "http://localhost:3000/admin" をアドレスバーに入力します。

インストールに成功していれば、次のような画面が表示されます。
(初回は少し時間がかかります)

すでに作成したテーブルを作成している場合にはそれが表示されます。
私の環境の場合、Questions というテーブルを作成しているので表示されていますね。

テーブル名を選択すると、編集画面に飛べます。
"+Add new" からレコードを追加したり、外部へ出力したりできます。

BASIC認証をするよう制限をかける

デフォルトだとアドレスバーから誰でも管理画面にアクセスできてしまうので、セキュリティ的に問題があります。
BASIC認証(ユーザー名、パスワード認証)をかけましょう。

# 一番上に追加
  config.authenticate_with do
    authenticate_or_request_with_http_basic('Site Message') do |username, password|
      username == 'admin' && password == 'admin'
    end
  end

サーバを起動しなおして、"http://localhost:3000/admin" にアクセスすると認証ダイアログが表示されます。

上記ダイアログが表示されれば成功です。

Discussion