我正在使用Django ModelForms。我有一个下拉选择器,允许用户选择国家。该国家/地区是预订模型的一部分,使用django_countries定义。例如,
在models.py
中from django_countries import CountryField
class Booking(models.Model)
name = models.charField(max_length=100)
country = CountryField()
在views.py中,我希望能够在下拉菜单中设置默认选定项目,例如“英国”。我知道如何使用文本字段执行此操作,但无法使用CountryField()。例如,
booking = BookingForm(initial={'name': 'mr majeika'}) //works
booking = BookingForm(initial={'country': 'United Kingdom'}) //does not work
我希望有人可以指出我正确的方向?
答案 0 :(得分:3)
根据这里:
http://pypi.python.org/pypi/django-countries/1.0.1
“CountryField基于Django的CharField,提供与官方ISO 3166-1国家/地区列表相对应的选项(,默认max_length为2 )”
这里有CountryField的完整列表:
http://djangosnippets.org/snippets/1476/
你可以尝试一下,看看它是否有效吗?
booking = BookingForm(initial={'country': 'GB'})