Rails Admin:既存の編集画面に独自の編集項目を追加する
なにがしたい
「ああ、Editページに○○を編集するスペースがほしい! 」と思うことがあるかもしれない。
今回だと、ProductモデルにImageモデルが関連づいていて(1商品が複数の商品画像を持っている想定)、
ProductのEditページにImageの表示順編集項目エリアを挿入したいというケース。
↓ つまるところ、こんな風に出したい。 では実際やってみる。
Editアクションの差し替え
インストールしたRails Admin gem の中身をいじるわけにはいかないので、どうするか。
Rails Engineなので、探索パスの前の方にscssを置いてやればそっちを読みにいく。
参考資料:http://qiita.com/joker1007/items/4ac31f081c44634a5e90#2-3
Railsさんは探索パスの前方に置いた順で読み込んでくれるもよう。
つまり、lib/rails_admin/config/action/edit.rb を作成し、差し替える。
Viewの差し替え
上の理論でViewも差し替え可能なので、サクッと置いてみる。
※ Haml使うらしい あらかじめHTML(ERB)を作成しておいて、Html2Haml で整形するのが、初心者には優しい(かも)。
まとめ
Edit ActionとViewを差し替えることで、実現したい形に持っていけた。
同様にして、変更したい部分のファイルを差し替えれば、ある程度自由にカスタマイズできそうな気配がした(Rails Adminの意味・・・)。