我需要建立一個可以有多行街道地址,城市,州(省)和郵政編碼的郵政地址。該國被省略。如何模擬郵政地址
我需要在街道地址中保留換行符,但仍然能夠搜索地址。
我看到兩種方法可以做到這一點:
class Address(models.Model):
street = models.ForeignKey('StreetAddress')
city = models.TextField()
province = models.TextField()
code = models.TextField()
class StreetAddress(models.Model):
line_number = models.IntegerField()
text = models.TextField()
或這一個存儲街道地址的單個文本字段,而是使用特殊的分隔符來編碼換行符:
class Address(models.Model):
street = models.TextField()
city = models.TextField()
province = models.TextField()
code = models.TextField()
是什麼做的最好方式代碼可讀性和效率(或其平衡)的條款?
由於Django 1.4,localflavor不再與Django捆綁在一起。所以要使用這個代碼,應該手動安裝它:'pip install django_localflavor_us'並導入USStateField,如下所示:'from django_localflavor_us.models import USStateField'。 – Altaisoft
我們如何建模一般地址而不僅僅是美國地址? –
@Altaisoft提供的建議已過時。從該pypi頁面: 「警告:已過時的軟件包您不應再使用此軟件包,前者的django.contrib.localflavor軟件包現在可用作https://pypi.python.org/pypi/django-localflavor軟件包,包括美國當地的美味。「 所以相當於'pip install django-localflavor'&localflavor.models import USStateField' –