Django的ModelForm组件

时间:2023-03-08 22:05:47
Django的ModelForm组件

创建类

from django.forms import ModelForm
from django.forms import widgets as wd
from app01 import models class 类名(ModelForm):
class Meta:
model = models.表名 #models中的表名
fields="__all__", # 字段
exclude=None, # 排除字段
widgets=None, # 自定义插件
error_messages=None, # 自定义错误信息(整体错误信息from django.core.exceptions import NON_FIELD_ERRORS) def clean_字段名 #自定义钩子函数

实例化对象

form = 类名(instance=obj,data=request.POST)

instance传的是已有的对象(在页面中显示默认值)
data传的是从页面返回过来的值(用户输入的值 ,用来验证)

form.is_valid() #验证

form.save   #将数据保存至数据库中(如果有instance参数就修改数据库中的记录,如果没有instance参数就在数据库中添加新的一条记录)