🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more
Socket
DemoInstallSign in
Socket

formatted_form

Package Overview
Dependencies
Maintainers
3
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

formatted_form

2.1.2
Rubygems
Version published
Maintainers
3
Created
Source

Formatted Form Build Status

A Rails form builder that generates Twitter Bootstrap markup and helps keep your code clean.

  • Uses existing Rails helpers
  • Auto-generates labels
  • Generates horizontal, vertical and inline forms
  • Groups of checkboxes
  • Groups of radio buttons
  • Prevents double clicking on submit buttons

Installation

Add gem definition to your Gemfile and run bundle install:

gem 'formatted_form'

Require it in your CSS and JS manifest files:

//= require formatted_form

Usage (with haml)

Use formatted_form_for when you want to render a form with Bootstrap markup.

A sample user form

= formatted_form_for [:admin, @user] do |f|
  = f.text_field :name
  = f.number_field :age, nil, :in => 1...100
  = f.email_field :email, :prepend => '@'
  = f.phone_field :phone
  = f.password_field :password
  = f.password_field :password_confirmation
  = f.url_field :homepage
  = f.select :role, User::ROLES
  = f.time_zone_select :time_zone
  = f.check_box :reminder, :label => 'Send Daily Reminder?'
  = f.submit 'Save'

A login form

Add a class to the form or any field to change the way it is rendered.

= formatted_form_for @session_user, :url => login_path, :class => 'form-horizontal' do |f|
  = f.text_field :email
  = f.password_field :password
  = f.check_box :remember_me, :label => 'Remember me when I come back'
  = f.submit 'Log In'

A search form

Hide the label by passing :label => '' on any field. (Useful for inline search forms)

= formatted_form_for @search, :url => [:admin, :users], :html => {:method => :get, :class => 'form-search'} do |f|
  = f.text_field :name_equals, :label => 'Find by', :placeholder => 'Name'
  = f.select :role_equals, User::ROLES, :label => ''
  = f.submit 'Search', :class => 'btn-default'

(Example using MetaSearch helpers)

Checkboxes

A single checkbox:

= f.check_box :send_reminder

A group of checkboxes:

= f.check_box :colours, :values => [['Red', 1], ['Green', 2], ['Blue', 3]]

Use the :help_block option to show the label on the right side:

= f.check_box :approved, :help_block => 'Label on the Right'

Radio buttons

A single radio button:

= f.check_box :role, 'admin'

A group of radio buttons:

= f.radio_button :role, [['Admin', 1], ['Manager', 2], ['Editor', 3]]

Submit

If you add 'formatted_builder' to your Javascript manifest you'll be able to add an extra data-loading-text option to submit buttons. This will prevent accidental multiple form submits.

= f.submit 'Log In', :data => {:loading_text => 'Saving ...'}

More examples

Override the autogenerated label by using the :label option on any element.

= f.text_field :name, :label => 'Full name'

Use :append and :prepend on any field:

= f.text_field :price, :append => '.00'
= f.email_field :email, :prepend => '@'

Use :help_block to provide extra description to a fields:

= f.email_field :email, :help_block => 'Please enter your emails address'

Copyright 2012 Jack Neto, Oleg Khabarov, The Working Group, Inc

FAQs

Package last updated on 25 Oct 2013

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts