为了账号安全,请及时绑定邮箱和手机立即绑定

Django 表单处理流程

标签:
Python Django

Django 的表单类别可以自动产生HTML 表单,因此不需写太多HTML 程式码

▸ 利用表单完成资料之增读改删查功能:Create, Read, Update, Delete, Search (CRUD + search)

▸ Django表单功能:

✶ 利用自动产生的小工具来显示HTML 表单,例如文字栏位或日期选择器

✶ 依据所指定的规则来验证表单资料

✶ 如果表单资料有误,会自动重新显示表单


Django表单的处理流程

▸在app目录里建立forms.py模组

▸在forms.py中建立表单类别(Form class)

▸ 如果需要,可以客制化Django 表单

▸ 建立表单处理的URL 对应

▸ 撰写views 程式来处理表单,包括:呈现及储存表单资料、显示错误讯息等

▸ 建立范本来呈现HTML 表单

Django表单类别

▸依据Article model建立Django表单ArticleForm

https://img1.sycdn.imooc.com//5f50c9c500018a9006040263.jpg

首先汇入formsArticle model

✶ ArticleForm()Article model的表单,因为表单栏位来自Model,因此继承forms.ModelForm,有两个输入栏位( titlecontent )

title:字元栏位( CharField ),栏位标签为「标题」,最长128个字元, Django预设CharField使用<input type="text" ...>输入栏位

content:字元栏位( CharField ),栏位标签为「内容」,Widget为表单小工具,用来设定页面中的输入模式(此例为<textarea ...>...</textarea> )

#在诠释资料中,model = Article:说明表单来自于Article model,Django会检查表单和Model是否一致

fields = ['title', 'content']:以串列指定表单所使用的栏位,有三种写法:

- fields = [...]:包含所需要的Model栏位(正面表列)

- exclude = [...]:排除某些Model栏位(负面表列)

- fields = '__all__':所有Model栏位


分享一些Django表单的常用栏位

常用栏位:

CharField:字元
IntegerField:整数
FloatField:浮点数
BooleanField:布林
DateField:日期
DateTimeField:日期时间
ChoiceField:单选
MultipleChoiceField:复选
ModelChoiceField:单选(选项来自Model) 
ModelMultipleChoiceField:复选(选项来自Model) 
URLField:网址
EmailField:电邮




点击查看更多内容
1人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消