Create a minimal simple set of fields to store shipping address for use in non-localised forms that can be used to easliy create shipping address labels.
full_name Can't get more simple than that 😂. Reasons for this can be found at w3.org personal names you'll find some good advice here if you want to go more fancy that just the one field. Field size of 70 comes from UK Government Data Standards Catalogue.
address fields Most international shipping requirements state that a shipping label should have only 2 address lines not exceeding 50 characters each.
city Line on an address label should, in general, not exceeding 50 characters. Which should suffice based on this list of long place names.
Country field For this field I've used a Django specific model field type that contains all the ISO 3166-1 countries. Django package django-countries
Region Optional field. This information is not strictly necessary or could be included in one of the address lines. Purpose is to enter a region name like country area, district, state, province or county.
[organisation] optional
[full_name]
[street_address_1]
[street_address_2] optional
[city] [postcode]
[region] optional
[country]
- USPS international shipping requirements
- Character Limits for USPS Labels
- Informatica.com: Address format per country
- Universal Postal Union: Postal addressing systems in member countries
- U.S. Postal Service: Address Standards for International Mail