ModelForm验证笔记
Form验证
UserInfoForm --> Form -->BaseForm(is_valid...)
UserInfoModelForm -->ModelForm -->BaseModelForm -->BaseForm(is_valid...)
提交表单报错:RuntimeError: You called this URL via POST, but the URL doesn’t end in a slash and you have APPEND_SLASH set.
解决方法:
RuntimeError: You called this URL via POST, but the URL doesn’t end in a slash and you have APPEND_SLASH set.
提示form的action地址最后不是/结尾的,而且APPEND_SLASH的值是Ture
将from的action地址改为/结尾的就可以了
或者
修改settings:APPEND_SLASH=False
ModelForm
1.生成HTML标签:class Meta:....
2.mf=xxxModelForm(instance=ModelObj)
3.额外的标签is_rmb=field.CharField(widget=fwidget.CheckboxInput())
4.各种验证 is_valid() ->各种沟子
5.mf.save()
拆开:instance=mf.save(False)
instance.save() 保存当前对象
mf.save_m2m() 保存多地多
三种AJAX:
原生
jQuery
伪AJAX操作
使用场景:
如果发送的是普通的数据:jQuery,XMLHttpRequest,iframe
如果发送的是文件:iframe,jQuery(FormData),XMLHttpRequest(FormData),
验证码
1.创建一张图片 pip install Pillow
2.在图片中写入随机字符串
3.将图片写入到指定文件
4.打开指定目录文件,读取内容
5.返回给用户 HttpResponse(data)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器