from django import forms

Field

required=True,

是否允许为空

widget=None,

HTML插件

label=None,

用于生成Label标签或显示内容

initial=None,

初始值

help_text='',

帮助信息(在标签旁边显示)

error_messages=None,

错误信息 {'required': '不能为空', 'invalid': '格式错误'}

validators=[],

自定义验证规则

localize=False,

是否支持本地化

disabled=False,

是否可以编辑

label_suffix=None

Label内容后缀

CharField(Field)

字符串

max_length=None,

最大长度

min_length=None,

最小长度

strip=True

是否移除用户输入空白

IntegerField(Field)

整数

max_value=None,

最大值

min_value=None,

最小值

FloatField(IntegerField)

浮点数

DecimalField(IntegerField)

max_value=None,

最大值

min_value=None,

最小值

max_digits=None,

总长度

decimal_places=None,

小数位长度

input_formats=None

时间格式化

ChoiceField(Field)

单选

choices=(),

选项,如:choices = ((0,'上海'),(1,'北京'),)

required=True,

是否必填

widget=None,

插件,默认select插件

label=None,

Label内容

initial=None,

初始值

help_text='',

帮助提示

ModelChoiceField(ChoiceField)

单选,通过orm操作读取数据

queryset,

# 查询数据库中的数据(类中必须定义__str__方法)

empty_label="---------",

# 默认空显示内容

to_field_name=None,

# HTML中value的值对应的字段

limit_choices_to=None

# ModelForm中对queryset二次筛选

MultipleChoiceField(ChoiceField)

多选

ModelMultipleChoiceField(ModelChoiceField)

多选,通过orm操作读取数据,类似单选

FileField(Field)

allow_empty_file=False     是

否允许空文件

EmailField(CharField)

邮箱

ImageField(FileField)

注:需要PIL模块,pip3 install Pillow

以上两个字典使用时,需要注意两点:

- form表单中 enctype="multipart/form-data"

- view函数中 obj = MyForm(request.POST, request.FILES)

RegexField(CharField)

正则

regex,

自定制正则表达式

max_length=None,

最大长度

min_length=None,

最小长度

error_message=None,

忽略,错误信息使用 error_messages={'invalid': '...'}

SplitDateTimeField(MultiValueField)

input_date_formats=None,

格式列表:['%Y--%m--%d', '%m%d/%Y', '%m/%d/%y']

input_time_formats=None

格式列表:['%H:%M:%S', '%H:%M:%S.%f', '%H:%M']

TypedChoiceField(ChoiceField)

coerce = lambda val: val

对选中的值进行一次转换

empty_value= ''

空值的默认值

TypedMultipleChoiceField(MultipleChoiceField)

coerce = lambda val: val

对选中的每一个值进行一次转换

empty_value= ''

空值的默认值

FilePathField(ChoiceField)

文件选项,目录下文件显示在页面中

path,

文件夹路径

match=None,

正则匹配

recursive=False,

递归下面的文件夹

allow_files=True,

允许文件

allow_folders=False,

允许文件夹

required=True,

widget=None,

label=None,

initial=None,

help_text=''

ComboField(Field)

fields=()

使用多个验证,如下:即验证最大长度20,又验证邮箱格式
fields.ComboField(fields=[fields.CharField(max_length=20),
fields.EmailField(),])

GenericIPAddressField

protocol='both',

both,ipv4,ipv6支持的IP格式

unpack_ipv4=False

解析ipv4地址,如果是::ffff:192.0.2.1时候,可解析为192.0.2.1,
PS:protocol必须为both才能启用

MultiValueField(Field)

PS: 抽象类,子类中可以实现聚合多个字典去匹配一个值,要配合MultiWidget使用

DateField(BaseTemporalField)

格式:2015-09-01

TimeField(BaseTemporalField)

格式:11:12

DateTimeField(BaseTemporalField)

格式:2015-09-01 11:12

DurationField(Field)

时间间隔:%d %H:%M:%S.%f

SlugField(CharField)

数字,字母,下划线,减号(连字符)

UUIDField(CharField)

uuid类型

URLField(Field)

BooleanField(Field)

NullBooleanField(BooleanField)

BaseTemporalField(Field)

Django之from.Form内置字段的更多相关文章

  1. Django Form 内置字段

    常用字段: Field required=True, 是否允许为空 widget=None, HTML插件 label=None, 用于生成Label标签或显示内容 initial=None, 初始值 ...

  2. {Django基础十之Form和ModelForm组件}一 Form介绍 二 Form常用字段和插件 三 From所有内置字段 四 字段校验 五 Hook钩子方法 六 进阶补充 七 ModelForm

    Django基础十之Form和ModelForm组件 本节目录 一 Form介绍 二 Form常用字段和插件 三 From所有内置字段 四 字段校验 五 Hook钩子方法 六 进阶补充 七 Model ...

  3. VS2019 开发Django(九)------内置模板和过滤器

    导航:VS2019开发Django系列 紧接上篇,继续介绍Django中的模板,考虑可能篇幅过长,所以分为两部分来讲,今天的主要内容: 1)内置模板和过滤器 母版,继承关系.头部导航和页脚,是需要与其 ...

  4. django form 的内置字段类型

    定义的form类如下: from django import forms from django.forms import widgets class AddHouseForm(forms.Form) ...

  5. Django Form 的主要内置字段介绍

    修改 urls.py,添加 path('field.html', views.field), 在 templates 下创建 field.html, 内容如下: <!DOCTYPE html&g ...

  6. FORM内置系统函数

    abort_query;                                                    停止查询的执行 add_group_column(record grou ...

  7. Crusher Django Tutorial(5) 使用内置管理员系统

    http://crusher-milling.blogspot.com/2013/09/crusher-django-tutorial5-using-admin.html 顺便学习一下FQ Crush ...

  8. FORM内置系统变量

    常用 和输入焦点有关: SYSTEM.CURSOR_ITEM:返回系统当前正在操作的项名. SYSTEM.CURSOR_RECORD:返回系统当前正在操作的记录行号. SYSTEM.CURSOR_BL ...

  9. Django基础之form组件

    Form介绍 我们之前在HTML页面中利用form表单向后端提交数据时,都会写一些获取用户输入的标签并且用form标签把它们包起来. 与此同时我们在好多场景下都需要对用户的输入做校验,比如校验用户是否 ...

随机推荐

  1. 20199326《Linux内核原理与分析》第十一周作业

    Shellsock攻击实验 实验背景 2014年9月24日,Bash中发现了一个严重漏洞shellshock,该漏洞可用于许多系统,并且既可以远程也可以在本地触发. Shellshock,又称Bash ...

  2. Spring5参考指南:Environment

    文章目录 Profiles PropertySource 使用@PropertySource Spring的Environment接口有两个关键的作用:1. Profile, 2.properties ...

  3. Linux网络服务第五章NFS共享服务

    1.笔记 NFS一般用在局域网中,网络文件系统c/s格式 服务端s:设置一个共享目录 客户端c:挂载使用这个共享目录 rpc:111远程过程调用机制 Showmount -e:查看共享目录信息 def ...

  4. Guzzle 一个PHP的HTTP客户端

    Guzzle是一个PHP的HTTP客户端,用来轻而易举地发送请求,并集成到我们的WEB服务上. https://github.com/guzzle/guzzle 接口简单:构建查询语句.POST请求. ...

  5. PPT模板素材

    http://588ku.com/sucai/0-dnum-0-54-0-1/

  6. flutter中使用redux之多界面互动

    在上一篇文章,我们介绍了如何在flutter中使用redux.在上一篇文章的例子中,我们使用了单界面集成redux,但是在实际项目中,我们通常涉及多个模块,每个模块涉及多个界面,那么如何使用redux ...

  7. 难道你现在还不知道:C/S和B/S

    随着网络技术的不断发展,各种各样的网络应用程序大爆发.运用最多的架构是基于浏览器+服务器的B/S结构,另一种是基于的 C/S结构. 概述: BS = Browser / Server =浏览器+服务器 ...

  8. SVN 部署(基于 Linux)

    1.通过 yum 命令安装 svnserve,命令如下: # 此命令会全自动安装svn服务器相关服务和依赖,安装完成会自动停止命令运行 yum -y install subversion # 若需查看 ...

  9. 数据可视化:使用python代码实现可视数据随机漫步图

    #2020/4/5 ,是开博的第一天,希望和大家相互交流学习,很开森,哈哈~ #像个傻子哟~       #好,我们进入正题, #实现功能:利用python实现数据随机漫步,漫步点数据可视化 #什么是 ...

  10. JWT安全问题

    Json Web Tokens 在线工具网站:https://jwt.io/ python 用到的库 jwt  // pip install pyjwt JWTCrack key   // git c ...