【问题标题】:Getting Error while going through with django doc使用 django doc 时出错
【发布时间】:2013-03-03 23:50:23
【问题描述】:

我在 ./manage.py shell 中输入的以下代码

导入日期时间
从 django.db 导入模型
类 ContactForm(forms.Form):
...      日期 = DateField(widget=CalendarWidget)
...      name = CharField(max_length=40, widget=OtherWidget)
...
回溯(最近一次通话最后一次):
文件“”,第 1 行,在
文件“”,第 2 行,在 ContactForm
NameError:名称“日期字段”未定义

如果还有什么要导入的。如果是这样,请告诉我并提前感谢...

【问题讨论】:

    标签: django


    【解决方案1】:
    class ContactForm(forms.Form):
        date = forms.DateField(widget=CalendarWidget)
        name = forms.CharField(max_length=40, widget=OtherWidget)
    

    【讨论】:

    • 但在 djnago 的媒体文档形式中,代码按照我上面的代码给出的日期和名称......!!!这引发了与上述代码中相同的错误......请告诉为什么会这样......?
    • 文档链接?
    • link:--docs.djangoproject.com/en/1.4/topics/forms/media 并且主题是该页面上最后一个表单上的媒体。
    • @jayrawal 这是通过先导入from django import forms 然后from django.forms.fields import * 来完成的。看看我的编辑。
    • 是的,我明白了...我不知道为什么,也许你可以直接问他们为什么它不完整。有很多人对 django 文档感到困惑
    【解决方案2】:

    你应该导入django.forms:

    from django import forms
    
    class ContactForm(forms.Form):
        date = forms.DateField(widget=CalendarWidget)
        name = forms.CharField(max_length=40, widget=OtherWidget)
    

    编辑:或者为了让您的代码正常工作,您可以这样做:

    from django import forms
    from django.forms.fields import *
    
    class ContactForm(forms.Form):
        date = DateField(widget=CalendarWidget)
        name = CharField(max_length=40, widget=OtherWidget)
    

    【讨论】:

    • @jayrawal 使用print f.media,而不仅仅是f.mediaf.media 将调用媒体__repr__ 方法,而print f.media 将调用它的__str__ 方法。
    • 非常感谢.......它的工作原理,我明白背后的原因......再次感谢......
    猜你喜欢
    • 2013-02-05
    • 1970-01-01
    • 1970-01-01
    • 2018-01-14
    • 2023-03-11
    • 1970-01-01
    • 1970-01-01
    • 2018-02-18
    • 1970-01-01
    相关资源
    最近更新 更多