问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

如何在 django admin 中使用 formset

发布网友 发布时间:2022-04-10 08:16

我来回答

2个回答

懂视网 时间:2022-04-10 12:38

Form验证(初始Form组件验证) - 问题: - 无法记住上次提交的内容,页面刷新数据消失 - 重复进行提交数据的校验(数据是否为空,长度大小等等) - 解决方法:django Form组件 - 定义规则(数据的格式,字段必须和表单上name属性一致) class LoginForm(Form): 实例化对象obj = LoginForm(request.POST) - 数据检验 obj.is_valid() - 提供详细错误信息(可以自定制错误提示) -- 自定制错误信息,在类定义的时候通过error_messages参数 obj.errors - 提供符合规则的信息(类型是字典,数据库orm操作支持类型是字典操作) obj.cleaned_data - Form实例: a.定义规则 from django.forms import Form, fields class LoginForm(Form): # 定义规则,fields是正则验证 # usernma和password必须和前端模板Form里面input的name一致 username = fields.CharField(required=True, max_length=16, min_length=6, error_messages={ ‘required‘: ‘不能为空‘, ‘max_length‘: ‘长度必须少于16‘, ‘min_length‘: ‘长度必须大于6‘ }) password = fields.CharField(required=True, min_length=8, error_messages={ ‘required‘: ‘不能为空‘, ‘min_length‘: ‘长度必须大于8‘ }) b.使用 def login(request): if request.method == ‘GET‘: return render(request, ‘login.html‘) else: obj = LoginForm(request.POST) # 检验提交数据是否符合规则 if obj.is_valid(): print(obj.cleaned_data) # obj.cleaned_data是一个字典,form表单提交的数据 #{‘password‘: ‘aaaaaaaaaa‘, ‘username‘: ‘alexadfdda‘} return redirect(‘http://www.baidu.com‘) else: return render(request, ‘login.html‘, {‘error‘: obj.errors}) # 作业(登录,注册)最终版 - 保留上次输入的值 - 用户数据格式的验证 View Code

 

[oldboy-django][2深入django]初始Form组件

标签:max   用户   .com   form表单   aaaaa   int   print   use   article   

热心网友 时间:2022-04-10 09:46

Django forms使用容易, 又方便扩展, 因此Django admin和CBVs基本都基于forms使用. 事实上, 由于django forms的强大验证功能, 大多数Django API 框架都是用forms作为其验证的一部分.

虽然django forms的学习需要花费一点时间, 但如果将forms, models和views结合起来使用, 我们可以花费很少的经历来完成庞大的工作.

1. Django Forms的强大之处

有些django项目并不直接呈现HTML, 二是以API框架的形式存在, 但你可能没有想到, 在这些API形式的django项目中也用到了django forms. django forms不仅仅是用来呈现HTML的, 他们最强的地方应该是他们的验证能力. 下面我们就介绍几种和Django forms结合使用的模式:

2. 模式一: ModelForm和默认验证

最简单的使用模式便是ModelForm和model中定义的默认验证方式的组合:

# myapp/views.py
from django.views.generic import CreateView, UpdateView

from braces.views import LoginRequiredMixin

from .models import Article

class ArticleCreateView(LoginRequiredMixin, CreateView):
model = Article
fields = ('title', 'slug', 'review_num')

class ArticleUpdateView(LoginRequiredMixin, UpdateView):
model = Article
fields = ('title', 'slug', 'review_num')
正如以上代码中看到的一样:

ArticleCreateView和ArticleUpdateView中设置model为Article
两个view都基于Article model自动生成了ModelForm
这些ModelForm的验证, 是基于Article model中定义的field转换而来的
3. 模式二, 在ModelForm中修改验证

在上面的例子中, 如果我们希望每篇article title的开头都是"new", 那么应该怎么做呢? 首先我们需要建立自定义的验证(validator):
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
小鹿的过冬方式是什么 我弟弟生气,拍了下电脑桌,结果再开机就说电源按钮关闭,显示器休眠 为什么进入屏保后几分钟显示器又亮了起来 我的手碰电脑桌显示器经常闪一下 下一站江湖所有隐藏功法 最新隐藏功法级别 《下一站江湖》玄龟软甲获得方法介绍_《下一站江湖》玄龟软甲获得方法是... 如何选购前锋热水器 近年美国校园电影,青春喜剧 最好是08-11年的,新的。不要悲剧的。 推荐几部美国校园喜剧电影,谢谢! 美国 八九十年代 的 电视剧 电影 讲美国 八十年代的也可以 内容要有摇... 泡糖醋萝卜的腌制方法 adobe有一款软件包含PS AI ID等等,叫什么名字,最好能给出下载地址 西瓜和芒果种得出来吗? 芒果籽怎么种 溧阳市天地人和文化传媒有限公司怎么样? 溧阳盛夏光年文化传媒有限公司怎么样? 溧阳天艺文化传媒有限公司怎么样? 溧阳市中博广告有限公司怎么样? 溧阳市金龙文化传媒有限公司怎么样? 溧阳市九天文化传媒有限公司怎么样? 平面设计一般学什么内容呢?我在溧阳,这边就业怎么样 溧阳市丰屹广告有限公司怎么样? 溧阳弈博广告有限公司怎么样? 溧阳启程广告有限公司怎么样? 溧阳市聚诚广告传媒有限公司怎么样? 溧阳市一九四九传媒策划有限公司怎么样? 溧阳哪里有CAD培训? 溧阳平面设计哪里学,急!!! 溧阳有没有什么地方可以考国际注册营养师的? 溧阳哪里有好的平面设计培训学校 借条撕毁后还具有法律效力吗 合同撕毁还有效吗 合同合本被撕毁还有效吗 如果合同撕毁!合同还有法律效益吗?是借款合同 双方合同已被撕毁还会生效吗? 如果甲方把乙方的合同撕毁了,合同还有效吗 被骗的合同当面撕毁了还有效吗? 撕毁的欠条还具有效吗? 撕毁的合同法律上有效吗 开发商和我公公签了购房合同,因为我们不同意,然后把合同原件撕毁了,请问购房合同还生效吗? 双方同意撕毁合同,单方面粘好还有效吗 年轻人不想出去,在家可以用手机做什么赚钱? 没文化又钱不出门能从手机上怎么赚钱? 很想知道在家用手机怎么赚钱? 不能出门的残疾人如何通过手机赚钱? 有人用一部手机月赚3万元,学会这个方法,不出门照样赚钱 天天在家没事做,怎么用手机挣钱呢? 有什么工作是在家带孩子也可以挣钱的,就是一部手机 社恐的人不想出去外面。有没有在家里用电脑手机赚钱的方法? 有没有不出门用手机就可以赚钱的方法