LoginSignup
6
8

More than 5 years have passed since last update.

ActiveAdmin 一般的設定

Posted at

【これは http://activeadmin.info/docs/1-general-configuration.html を翻訳したものです。】


ActiveAdmin 一般的設定

Active Admin の設定は config/initializers/active_admin.rb で行います。以下に共通設定をいくつか示します。

認証

アプリケーション内で Active Admin による認証と current user の使用を行うには2箇所設定しなければなりません。

  • メソッド・コントローラを強制的認証に用います。
config.authentication_method = :authenticate_admin_user!
  • current user アクセス用のメソッドを用います。
config.current_user_method = :current_admin_user

認証を無効にするにはこれらの設定を false に設定します。

config.authentication_method = false
config.current_user_method   = false

サイト・タイトル・オプション

すべてのページで、サイト・タイトルがメニュー・バーの左側に表示されます。カスタマイズするには以下のようにします。

config.site_title       = "My Admin Site"
config.site_title_link  = "/"
config.site_title_image = "site_image.png"
config.site_title_image = "http://www.google.com/images/logos/google_logo_41.png"

国際化 (I18n)

翻訳ファイルを新規作成したり既存の翻訳ファイルを使うには、アプリケーションの config/locales フォルダに config/locales/en.yml をコピーして編集します。我々は新しい/アップデートされた翻訳ファイルを歓迎するので、遠慮なく 参加 してください!

名前空間

Active Admin のリソースは、名前空間内に登録されます。デフォルトの名前空間は「admin」です。

# app/admin/posts.rb
ActiveAdmin.register Post do
  # ...
end

例えば Post リソースは「admin」名前空間に登録され、 /admin/posts でアクセスできます。設定は名前空間ごとに行うことができ、アプリケーションの設定を継承します。

例えば、2つの名前空間 (:admin:super_admin) があり、それぞれに異なったサイト・タイトルを表示するには、 初期化ファイル内の個別の config.namespace(name) ブロックの内側で設定します。

ActiveAdmin.setup do |config|
  config.site_title = "デフォルトのサイト・タイトル"

  config.namespace :admin do |admin|
    admin.site_title = "管理サイト"
  end

  config.namespace :super_admin do |super_admin|
    super_admin.site_title = "特権サイト"
  end
end

ロード・パス

デフォルトでは Active Admin のファイルは app/admin/ に置くようになっています。このディレクトリを変更するには、初期化ファイルで以下のように指定します。

ActiveAdmin.setup do |config|
  config.load_paths = [File.join(Rails.root, "app", "ui")]
end

コメント

デフォルトでは Active Admin の各リソースにはコメントが付きます。ときどきこれは不要になります。コメントを無効にするには以下のように指定します。

# アプリケーション全体で不要の場合
ActiveAdmin.setup do |config|
  config.allow_comments = false
end

# 名前空間ごとに指定する場合
ActiveAdmin.setup do |config|
  config.namespace :admin do |admin|
    admin.allow_comments = false
  end
end

# リソースごとに指定する場合
ActiveAdmin.register Post do
  config.comments = false
end

ユーティリティ・ナビゲーション

「ユーティリティ・ナビゲーション」は通常右上にあり、current user とログアウトへのリンクが表示されます。ユーティリティ・ナビゲーションは大抵の他のメニューシステムに似ていますが、独自にレンダリングすることもできます。

ActiveAdmin.setup do |config|
  config.namespace :admin do |admin|
    admin.build_menu :utility_navigation do |menu|
      menu.add label: "ActiveAdmin.info", url: "http://www.activeadmin.info",
                                          html_options: { target: :blank }
      admin.add_current_user_to_menu  menu
      admin.add_logout_button_to_menu menu
    end
  end
end
6
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
8