Django 用户的国家选择

Dan*_*Dan 1 python django country django-models

我不确定这是否是问这个或 Programmers SE 的正确地方,所以请指出我是否在这里发布它是错误的。

我需要创建一个 UserProfile 模型,其中包含有关 Django 中用户的额外信息。

但它包含的信息之一是用户的祖国。

可以想象,世界上所有国家的名单是……相当大的名单。( http://www.state.gov/misc/list/ )

有没有什么办法(懒惰的方式)可以让我拥有这个功能而不像这样自己列出所有国家?

COUNTRY_CHOICE = (('Afghanistan', 'Afghanistan'), ('Albania','Albania') .....
Run Code Online (Sandbox Code Playgroud)

ale*_*cxe 5

有一个可重复使用的应用程序django-countries。除了其他功能,它提供了一个CountryField

Django 模型的国家/地区字段,提供所有 ISO 3166-1 国家/地区作为选择。

CountryField 基于 Django 的 CharField,提供对应于官方 ISO 3166-1 国家列表的选项(默认 max_length 为 2)。

from django.db import models
from django_countries.fields import CountryField

class Person(models.Model):
    name = models.CharField(max_length=100)
    country = CountryField()
Run Code Online (Sandbox Code Playgroud)