山奥の自宅勤務エンジニアブログ

システム開発技術、データ分析関連でお勉強したことや、山奥生活を綴る、テンション低めなブログです。

ActiveAdminのEdit画面のselectタグで表示するラベルを変更する

ActiveAdminの管理画面のうち、モデルのEdit画面で入力項目がselectタグのリストになっているとき、リストのラベルが

#<Hoge:0x007ea2199999>

のようなインスタンスを表す文字列になっていて、何を選択すれば分かりにくいときがある。

この場合、ActiveAdmin 0.4.4で使えるようになった:member_labelを使うと分かりやすい。

ActiveAdmin.register Hoge do 
  #編集画面に表示したい項目をここに並べる
  form do |f|
    f.inputs "Details" do
      f.input :moge, :as => :select, :member_label => :name
    end
    f.buttons
  end
end

ここでは、mogeモデルのプロパティnameをselectタグのラベルに指定している。