ActiveRecordのフォームの雛形を手っ取り早く作成する。

<%= form("record_name") %>

で@record_nameのフォームを簡単に生成できるというのを知った。

でも細かい編集もしたかったので、以下のようにしてみた。

<%= form("record_name", :action => "update", :input_block => Proc.new { |record,column|
<<EOT
<p><label for="#{record}_#{column.name}">#{column.human_name}</label><br />
<#{'%'}= input("#{record}", "#{column.name}") #{'%'}></p>
EOT
}) %>

これで出力されるソースをrhtmlにコピーして編集する。inputにオプションを足したり、適切なメソッドに切り替えたり。