django中forms的定义
直接定义
class ContactForm(forms.Form):
date = DateField(widget=CalendarWidget)
name = CharField(max_length=40, widget=OtherWidget)
widget参数定义了要使用的小部件,小部件选项可见这里
通过模型定义
必须继承ModelForm类
from django.forms import ModelForm
class BlogForm(ModelForm):
class Meta:
model = Blog
fields = ['author', 'essay', 'title', 'label', 'cover']
widgets = {
'essay': CKEditorWidget,
'cover':
}
通过定义内部类来生命form的属性
常用内部类参数说明:
model: 说明要继承的模型
field:说明要在表单中显示的字段,__all__表示所有
exclude: 要从表单中排除的字段
widgets: 设置字段的小部件
(详细文档)