This repository is private.
All pages are served over SSL and all pushing and pulling is done over SSH.
No one may fork, clone, or view it unless they are added as a member.
Every repository with this icon (
) is private.
Every repository with this icon (
This repository is public.
Anyone may fork, clone, or view it.
Every repository with this icon (
) is public.
Every repository with this icon (
Alexander Lang (author)
Tue Jul 15 09:33:29 -0700 2008
commit 8469f585cf3aa63ece237d805b13ac2a680135ef
tree 3610a89930b2cd22e7a91eedae3986b334dafc05
parent 148beee065627a92cab7c1aa1c1e38f20c2f35ea
tree 3610a89930b2cd22e7a91eedae3986b334dafc05
parent 148beee065627a92cab7c1aa1c1e38f20c2f35ea
forms-fu /
README
forms-fu
======================
this plugin is intended to help in creating forms. its featureset will grow in the near future. for now it can do this:
* adds a required_field?(field_name) method to all the activerecord models. this allows you to automatically mark
required fields in a form with a *. required fields are determined automatically from the validates_* calls in the
class.
* there is a helper method available in the views that prints out the label for a field with our without star
* a TabularForumBuilder class which can be used with the form_for rails helper. It automatically wraps all form fields
in table rows and cells.
Examples
=======
# user.rb
class User < ActiveRecord::Base
validates_presence_of :name
validates_confirmation_of :password
validates_acceptance_of :terms
required_fields << [:login] # in case you want to mark additional fields as required
end
User.required_field?(:name) # => true
User.required_field?(:login) # => true
User.required_field?(:password_confirmation) # => true
User.required_field?(:terms) # => true
User.required_field?(:email) # => false
# users/new.html.erb
<%= label_fu @user, :name %> # => <label for="user_name">Name *</label>
<%= label_fu @user, :email %> # => <label for="user_email">Email</label>
# or with the form builder
<%- form_for :user, :builder => TabularFormBuilder do |f| -%>
<table>
<%= f.text_field :name %>
</table>
<%- end -%>
# prints out:
<form ...>
<table>
<tr>
<th><label for="user_name">Name: *</label></th>
<td><input name="user[name]" type="text"/></td>
</tr>
</table>
</form>
# some added sugar:
<%= f.text_fields :email, :name, :address %>
# call text_field for each of the attributes
<%= f.text_field_without_label :name %>
# prints out the input tag without the tr, td and label - in case you need more customization
For questions, patches etc. contact alex[at]upstream-berlin.com
Copyright (c) 2008 Alexander Lang, released under the MIT license








