如何使用python字典创建带有日期字段的表单

如何使用python字典创建带有日期字段的表单,python,forms,dictionary,django-1.6,Python,Forms,Dictionary,Django 1.6,我在Django 1.6中有以下表格: class TestForm(forms.form): first_date = forms.DateField(widget=SelectDateWidget(), required=True) name = forms.CharField(widget=forms.PasswordInput(), label="Real Name") 我想使用字典在我的视图中创建这个表单的一个实例(请记住,我必须在这里使用python字典) 阅读文

我在Django 1.6中有以下表格:

class TestForm(forms.form):
    first_date = forms.DateField(widget=SelectDateWidget(), required=True) 
    name = forms.CharField(widget=forms.PasswordInput(), label="Real Name")
我想使用字典在我的视图中创建这个表单的一个实例(请记住,我必须在这里使用python字典)

阅读文档时,我发现了一个没有DateField的示例,并对其进行了测试:

form = TestFormNoDateField({"username": "John", "hair_color": "Black")
这很有魅力。问题是,当我使用带有DateField的表单尝试相同的方法时:

form = TestForm("name": "John", "first_date": "2005-01-23")
这会在xxx处引发一个
值错误:太多的值无法解包


如何设置日期字段的格式以避免此错误?

第一个\u日期
值中传递
datetime.date

form = TestForm("name": "John", 
                "first_date": datetime.date(year=2005, month=1, day=23)})
或者,如果您有一个日期字符串,请使用
strprime()
将其转换为
datetime

不要忘记导入日期时间


希望能有帮助。

正是我想要的。非常感谢你!
form = TestForm("name": "John", 
                "first_date": datetime.datetime.strptime('2005-01-23', '%Y-%m-%d')})