Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
A handy and flexible table / css form builder
Ruby
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
lib
spec
Gemfile
Gemfile.lock
README.textile
init.rb

README.textile

Uber builder

The greatest form builder for Ruby on Rails.

Why is it great?

  • Tabular forms
  • ul / li css forms
  • Easily extensible
  • Comes with a few useful extensions already
  • Comes with a FormBuilder compliant StaticBuilder to render any form built with it as static.

How do I harness this greatness?

To create a basic form:


<% form_for @user do |f| %>
  <h2>User details</h2>
  <% f.table do %>
    <% f.manual :label => "Name" do %>
      <%= f.text_field :first_name %>
      <%= f.text_field :last_name %>
    <% end %>
    <%= f.text_field :age %>
  <% end %>

Billing information

<% f.table do %> <%= f.text_field :address %> … etc. <% end %>

<% end %>

This form, out of the box, will be rendered as a table (with a class of form). To make the labels line up, you’ll want to add some CSS:


table.form td.label {
  display:block;
  width:200px;
  font-weight:bold;
}

You can also render ul / li like so:


<% form_for @user do |f| %>
  <h2>User details</h2>
  <% f.ul do %>
    ...
  <% end %>
<% end %>

The ul is rendered with a class of “form”. You’ll need to add css styling to make it work. Good luck with that.

Buy one get one free

If you extract that to a partial, _form.html.erb, then you could use if as a static view or a form


# render it as a form
<% form_for @user do |f| %>
  <%= render :partial => "form", :locals => {:f => f} %>
<% end %>

# render it as static
<% form_for @user, :builder => StaticBuilder do |f| %>
  <%= render :partial => "form", :locals => {:f => f} %>
<% end %>

I want to submit a patch

  1. Fork Uber-Builder
  2. Make your modification
  3. Add tests!
  4. Make sure all existing tests pass
  5. Send me a pull request on github

Author

Tim Harper

Credits

Graeme Mathieson for writing the original TabularFormBuilder, which I used as a starting point for UberBuilder

Something went wrong with that request. Please try again.