Minha experiência com o formtastic
Ontem eu alterei um projeto meu que estava usando o form_for do rails para usar o semantic_form_for do formtastic. Vou contar aqui como foi a minha experiência para que possa incentivar e ajudar outras pessoas também.

Se você quiser tem tudo sobre esta gem no do github (inglês) que você pode encontrar aqui.
Por isso resolvi mostrar inicialmente como instalar e depois como eu utilizei em meu projeto.
Existem duas maneiras para instalar, como GEM ou como plugin. Eu pessoalmente prefiro usar GEM, mas como eu disse é pessoal se você prefere usar pluguin aqui tem o exemplo também.
Instalando como GEM
sudo gem install justinfrench-formtastic
Não esqueça de adicionar a dependência desta gem no environment.rb
config.gem "justinfrench-formtastic", :lib => 'formtastic', :source => 'http://gems.github.com'
Instalando como Plugin
script/plugin install git://github.com/justinfrench/formtastic.git
Usando em meus projetos.
O método semantic_form_for funciona da mesma forma que o form_for do rails, sendo assim eu mantive o mesmos padrões e parâmetros na view.
Como vocês podem ver eu procurei usar um pouco a metodologia DRY e fiz apenas uma view para edição que que recebe os objetos do resource_controller, com isso a mesma view de edição funciona para todos os meus objetos dentro da área administrativa.
<% semantic_form_for(@object, :url => object_url, :live_validations => true, :html => { :method => :put, :multipart => true }) do |f| %>
<%= render :partial => "form", :locals => { :f => f } %>
<p class="submit"><%=submit_tag t(:update)%></p>
<% end %>
Eu mantive o padrão dos geradores do rails que utilizam um partial a fim de manter o mesmo form tanto para criar como para editar um registro.
Então bastou eu atualizar o meu partial para usar os novos helpers. Porém uma coisa importante de se dizer aqui é que se você quiser pode usar os helpers padrão do rails sem problemas.
<% f.inputs do %> <%= f.input :name %> <%= f.hidden_field :parent_id, :value => params[:parent_id] %> <li> <%= f.label :body %> <%= fckeditor_textarea "page", "body", :height => "400px" %> </li> <% end -%>
Este é o partial que utilizo nos formulários do modelo de páginas. Eu utilizei um helper do formtastic, um do rails e um personalizado do fckeditor. Veja mais um exemplo agora para o modelo de usuários.
<% f.inputs do %> <%= f.input :login %> <%= f.input :name %> <%= f.input :email %> <%= f.input :password %> <%= f.input :password_confirmation %> <%= f.input :roles, :as => :check_boxes %> <% end -%>
Neste caso ficou muito mais simples principalmente pra gerar os check box de roles que é um relacionamento has_and_belongs_to_many com o user.
Simples não é mesmo? Então espero que goste e utilize para economizar algumas boas linhas de código.
Márcio,
Legal a dica! Seria possível você colocar um screenshot para ver como ficou?
Valeu!
Marcelo acima tem um pequeno screenshot mostrando como ficou a edição de uma nova página.
O que eu to querendo agora é fazer um screencast explicando como apliquei isso no meu projeto.
Abraços