Every repository with this icon (
Every repository with this icon (
| name | age | message | |
|---|---|---|---|
| |
.gitignore | Thu May 14 10:29:16 -0700 2009 | |
| |
CHANGELOG.rdoc | Sat Aug 15 23:45:51 -0700 2009 | |
| |
LICENSE | Sun Jun 28 00:35:16 -0700 2009 | |
| |
README.rdoc | Sun Jun 28 00:37:14 -0700 2009 | |
| |
Rakefile | Sat Aug 15 17:49:29 -0700 2009 | |
| |
VERSION.yml | Sat Aug 15 23:46:14 -0700 2009 | |
| |
addresslogic.gemspec | Sat Aug 15 23:46:18 -0700 2009 | |
| |
init.rb | Thu May 14 09:54:57 -0700 2009 | |
| |
lib/ | Sat Aug 15 23:45:51 -0700 2009 | |
| |
rails/ | Sun Jun 28 00:35:16 -0700 2009 | |
| |
test/ | Sun Jun 28 00:35:16 -0700 2009 |
Address Logic
This is a simple library that takes away the annoyances of displaying addresses in a view. Since various parts of an address can sometimes be optional, such as "street2", displaying addresses was not fun:
# some HAML view
= address.street1
%br
- if !address.street2.blank?
= address.street2
%br
== #{address.city}, #{address.state} #{address.zip}
%br
= address.country
That’s just ugly. Instead, you can do this with Address Logic:
= address.address_parts.join("<br />")
Or, what about a single line address?
= address.address_parts.join(", ")
Maybe you only want city and state:
= address.address_parts(:only => [:city, :state]).join(", ")
Granted the above is probably easier without using AddressLogic, but it will purge any blank items in the address, so if city or state are optional then it would be cleaner to use AddressLogic.
Install and use
Install from rubyforge
$ sudo gem install addresslogic
Install from github:
$ sudo gem install binarylogic-addresslogic
Or as a plugin
$ sudo script/plugin install git://github.com/binarylogic/addresslogic.git
Then just include the AddressLogic module into any class of your choice. All that it assumes is that you have the street1, street2, city, state, zip, country (optional) methods.
class Address
apply_addresslogic
end
You can specify the fields too:
class Address
apply_addresslogic :fields => [:street1, :street2, :city, [:state, :zip], :country]
end
Helpful links
- Documentation: rdoc.info/projects/binarylogic/addresslogic
Copyright © 2009 Ben Johnson of [Binary Logic](www.binarylogic.com), released under the MIT license







