読者です 読者をやめる 読者になる 読者になる

deviseで生成されるviewをhamlに変換する

Rackベースの認証モジュールであるdeviseでは、Railsの場合、下記コマンドでviewファイルを生成できますが

$ rails g devise:views user

生成されるviewファイルがerb形式になってしまいます。
最近、hamlの良さにハマッてしまった僕にとってはもうerbには戻れないわけで。。。

で、ちょっと調べてみたらgithub内のwikiでerbからhamlに変換する方法が紹介されてましたので、ここを参考に試してみました。

とりあえずdeviseが入ってるという前提で進めます。

Gemfileに下記を追記

gem 'haml'
gem 'hpricot'
gem 'ruby_parser'

deviseのviewファイルを生成

$ rails g devise:views model_name

erbファイルをhamlに変換

$ for i in `find app/views/mode_name -name '*.erb'`; do html2haml -e $i ${i%erb}haml ; done

erbファイルはいらないので削除

$ find app/views/users -name '*.erb' -delete