from django import forms
class UserForm(forms.ModelForm):
first_name = forms.TextField(label=_(u'First name'), required=False)
last_name = forms.TextField(label=_(u'Last name'))
Run Code Online (Sandbox Code Playgroud)
它给了我一个" AttributeError:'module'对象没有属性'TextField'.一切似乎都没问题,除了缺少的TextField:
ipdb> forms
<module 'django.forms' from '/usr/local/lib/python2.7/dist-packages/django/forms/__init__.pyc'>
ipdb> forms.
forms.BaseForm forms.EmailField forms.MultiWidget forms.TypedChoiceField
forms.BaseModelForm forms.Field forms.MultipleChoiceField forms.TypedMultipleChoiceField
forms.BooleanField forms.FileField forms.MultipleHiddenInput forms.URLField
forms.CharField forms.FileInput forms.NullBooleanField forms.ValidationError
forms.CheckboxInput forms.FilePathField forms.NullBooleanSelect forms.Widget
forms.CheckboxSelectMultiple forms.FloatField forms.PasswordInput forms.fields
forms.ChoiceField forms.Form forms.RadioSelect forms.fields_for_model
forms.ClearableFileInput forms.HiddenInput forms.RegexField forms.forms
forms.ComboField forms.IPAddressField forms.Select forms.formsets
forms.DEFAULT_DATETIME_INPUT_FORMATS forms.ImageField forms.SelectMultiple forms.model_to_dict
forms.DEFAULT_DATE_INPUT_FORMATS forms.IntegerField forms.SlugField forms.models
forms.DEFAULT_TIME_INPUT_FORMATS forms.Media forms.SplitDateTimeField forms.save_instance
forms.DateField forms.MediaDefiningClass forms.SplitDateTimeWidget forms.util
forms.DateInput forms.ModelChoiceField forms.TextInput forms.widgets
forms.DateTimeField forms.ModelForm forms.Textarea
forms.DateTimeInput forms.ModelMultipleChoiceField forms.TimeField
forms.DecimalField forms.MultiValueField forms.TimeInput
Run Code Online (Sandbox Code Playgroud)
任何的想法?
Uma*_*ang 87
CharField
可能就是你要找的东西.
编辑:澄清一下,文档提到TextField
了模型字段类型.您不能将其用作表单字段.OP指出的表表明TextField
模型中的a 在相应的ModelForm中表示为CharField
(with widget=forms.Textarea
).我想,那时,没有表单字段Textarea
作为其默认小部件.
如果我猜到为什么Django做出了这个选择,我会说有两个字段只在他们使用的小部件中有所不同,而不是存储的数据类型,验证等可能被Django的人员认为是无用的因此您必须手动更改小部件.
tee*_*ane 59
如果你想要一个textarea,你可以使用forms.CharField和forms.TextArea小部件.
class ContactForm(forms.Form):
message = forms.CharField(widget=forms.Textarea)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
42786 次 |
最近记录: |