Adminなlayoutを設定する

以下を参考に。

stackoverflow.com

まずは、Adminで区切られる名前空間のコントローラーに共通する親コントローラを作成します。

class Admin::BaseController < ApplicationController
  layout 'admin'
  before_filter :require_admin_user
end

こうすることで、admin userかどうかのチェックなど、Adminな名前空間で区切られるcontrollerで共通にやりたいことなどまとめたりもできるので便利です。

そしたら、AdminのControllerはさきほど定義したAdmin::BaseControllerを継承するようにします。

class Admin::TopController < Admin::BaseController
  def index
  end
end

これで、admin.html.erbのレイアウトを優先して読み込むように設定できました。