项目作者: max-power

项目描述 :
International Postal Address Formatting
高级语言: Ruby
项目地址: git://github.com/max-power/postal_address.git
创建时间: 2013-07-24T03:09:25Z
项目社区:https://github.com/max-power/postal_address

开源协议:MIT License

下载


International Postal Address Formatting

International postal address formatting with HTML Microformats.

Installation

Add this line to your application’s Gemfile:

  1. gem 'postal_address'

And then execute:

  1. $ bundle

Or install it yourself as:

  1. $ gem install postal_address

Usage

  1. address = {
  2. recipient: 'Tobias Füncke',
  3. street: '101 Broadway',
  4. city: 'New York City',
  5. zip: '10002',
  6. state: 'NY',
  7. country_code: 'us'
  8. }
  9. Postal::Address.new(address).to_s
  10. Tobias Füncke
  11. 101 Broadway
  12. New York City NY 10002
  13. United States of America
  14. Postal::Address.new(address).to_html
  15. <p itemscope itemtype="http://schema.org/PostalAddress">
  16. <span itemprop="name">Tobias Füncke</span>
  17. <br>
  18. <span itemprop="streetAddress">101 Broadway</span>
  19. <br>
  20. <span itemprop="addressLocality">New York City</span>
  21. <span itemprop="addressRegion">NY</span>
  22. <span itemprop="postalCode">10002</span>
  23. <br>
  24. <span itemprop="addressCountry">United States of America</span>
  25. </p>
  26. Postal::Address.new(address).to_json_ld
  27. {
  28. "@context": "https://schema.org",
  29. "@type": "PostalAddress",
  30. "streetAddress": "101 Broadway",
  31. "addressLocality": "New York City",
  32. "addressRegion": "NY",
  33. "postalCode": "10002",
  34. "addressCountry": "us"
  35. }

Set a home country (country names are not display for those addresses)

  1. Postal.home_country = 'us'
  2. p = Postal::Address.new(address)
  3. p.to_html(tag: 'section', itemprop: 'address')
  4. <section itemprop="address" itemscope itemtype="http://schema.org/PostalAddress">
  5. <span itemprop="name">Tobias Füncke</span>
  6. <br>
  7. <span itemprop="streetAddress">101 Broadway</span>
  8. <br>
  9. <span itemprop="addressLocality">New York City</span>
  10. <span itemprop="addressRegion">NY</span>
  11. <span itemprop="postalCode">10002</span>
  12. </section>

Standalone AddressFormatter usage:

  1. Postal::AddressFormatter::Text.new(address).render
  2. Postal::AddressFormatter::HTML.new(address).render(tag: 'section', itemprop: 'address')

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request