LRD::ViewTools
Standard view helpers and stylesheet defaults for Logical Reality Design Projects.
Installing
Add to Gemfile:
gem 'lrd_view_tools'
and run ‘bundle install’.
Simple labeled inputs for forms:
form.labeled_input(field)
Produces a <label> <input> pair for a text field in a standard form helper.
The default LRD stylesheet (forms.sass) in all LRD projects will format the
label as an 8-em wide float to the left of the input (or may have been modified
on a per-project basis).
Usage example:
form_for(@user) do |f|
= f.labeled_input(:name)
= f.labeled_input(:email)
= f.labeled_input(:country) do
= f.select(:country, [ 'option 1', 'option 2'])
= f.unlabeled_submit
end
Options:
The output defaults to <input type="text" name="#{field}"> for the
but can be overridden in a number of ways:
#Override the input element by passing a block:
f.labeled_input(:boolean_field) do
f.checkbox(:boolean_field))
#Alter label text:
f.labeled_input(:fieldname, :text => "Other Text")
#Force a blank label:
f.labeled_input(:fieldname, :text => '' )
#Set to required - appends class 'required' to both the div and the input:
f.labeled_input(:fieldname, :required => 'true' )
#Add a comment after the input:
f.labeled_input(:password_confirmation, :comment => "Re-enter password")
#Change the input type to a textarea:
f.labeled_input(:description, :input_type => :text_area) # or :textarea, both work
#Create a telephone input:
f.labeled_input(:description, :input_type => :tel) # or :telephone, both work
Pass a block to partial:
block_to_partial(partial_name, options = {}, &block)
Usage example:
block_to_partial('shared/my_partial') do
<p>Paragraph to be yielded inside the partial.</p>
end
The block will be available to the partial as 'body', and any options
will be passed through as locals. In addition, options[:id] and
options[:class] will get converted to locals 'cssid' and 'cssclass'
to avoid name collisions.
A better debug()
lrd_debug(var) will output var, wrapped in <pre></pre>, but using a
recursive pp output to handle large objects.
Usage example (in HAML):
if ENV["RAILS_ENV"] == development
#debug
%h2 Request environment:
= lrd_debug(request.env)
Copyright © 2010-2011 Evan Dorn, released under the MIT license