【问题标题】:django countries dropdown defaultdjango国家下拉菜单默认
【发布时间】:2012-07-19 14:46:05
【问题描述】:

我正在使用 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

我希望有人能指出我正确的方向吗?

【问题讨论】:

    标签: django django-forms


    【解决方案1】:

    根据这里:

    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'})
    

    【讨论】:

    • 谢谢德伦努兹。我完全按照你的建议尝试了 - 它没有用。
    • Drennuz - 真的很抱歉。它确实奏效了。我被存储值的表单所吸引,太愚蠢了。感谢您的帮助!
    猜你喜欢
    • 2012-05-06
    • 2011-10-13
    • 2011-02-27
    • 2020-04-04
    • 2021-02-06
    • 2020-05-26
    • 2018-01-30
    • 2011-08-17
    • 2018-03-23
    相关资源
    最近更新 更多