Django之自定义 form 表单上传图片
django-admin startproject studenttest python manage.py startapp student
def uploadimage(request): return render(request,"student/file.html")
url(r"^file/$",views.uploadimage),
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>表单内容</title>
</head>
<body><form method="post" action="/handleimage/" enctype="multipart/form-data"> {% csrf_token %} <input type="file" name="image"><br> <input type="submit" value="提交"> </form>
</body>
</html>
request.FILES.get(name)
|
通过<input>标签的 name 属性值获得图片对象。
|
对象.chunks()
|
返回图片对象的数据值,类型为生成器对象。若要获取所有数据内容,则需要进行
遍历处理。
|
对象.name
|
返回图片对象的文件名。
|
对象.file
|
获取的二进制数据
|
from django.conf import settings
from django.http import HttpResponse
from .models import PictrueInfo
def handle(request):image = request.FILES.get("image") # 图片名 image_name = image.name # 图片内容 image_content = image.chunks() # 写入文件 path = "%s/student/%s"%(settings.MEDIA_ROOT,image_name)with open(path,"wb") as fs: for temp in image_content: fs.write(temp)# 图片路径名写入数据库 PictrueInfo.objects.create(picture="student/%s"%image_name) return HttpResponse("OK")
url(r"^handleimage/$",views.handle),
运行服务器,在浏览器中(注:当选择文件后点击按钮上传图片即可)输入如下网址:
http://127.0.0.1:8000/file/
当然127.0.0.1也可以换成localhost
可在pycharm中的项目中检查图片是否上传成功 media>>student
接下来是在网页中显示图片,打开 student/views.py 文件,创建 showpic()视图函数
# 批量显示图片
def showpic(request): picturelist = PictrueInfo.objects.all() return render(request,"student/picture.html",{"picturelist":picturelist})
url(r"^show/$",views.showpic),
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"> <title>批量显示图片</title>
</head>
<body>{% for picture in picturelist %} <img src="/static/media/{{ picture.picture }}" width="200px" height="150px"> {% endfor %}
</body>
</html>
以上就是Django框架的一个小应用,有兴趣的朋友可以自行操作。
Django之自定义 form 表单上传图片相关推荐
- Django框架 之 Form表单和Ajax上传文件
Django框架 之 Form表单和Ajax上传文件 浏览目录 Form表单上传文件 Ajax上传文件 伪造Ajax上传文件 Form表单上传文件 html 1 2 3 4 5 6 7 <h3& ...
- 利用form表单上传图片,图片保存到本地,得到图片名字(后期可以将图片名字存进数据库)
利用form表单上传图片,图片保存到本地,得到图片名字(后期可以将图片名字存进数据库) html部分:enctype="multipart/form-data" 一定要加! < ...
- 前端form表单上传图片等信息,python后端接收
前端form表单上传图片等信息,python后端接收. 最近总需要做关于图片上传的东西.一直百度,这次想自己记录一下. HTML代码: <form class="box" a ...
- 3 django系列之Form表单在前端web界面渲染与入库保存
author: 温柔易淡(Leo),欢迎技术交流与拍砖 preface 我们在前端写表单的时候,其实可以使用django自带的forms功能来实现,特别是在处理 修改已经存在数据 的场景特别好用,下面 ...
- antd自定义form表单控件
用 getFieldDecorator 方法包裹的表单控件会自动添加 value (或由 valuePropName 指定的属性名) 和 onChange (或由 trigger 指定的属性名)属性, ...
- ios form表单上传图片
1.使用微博开发的一个"发送带图片微博"的接口来测试,这是接口地址,这里面明确说明需要使用multipart/form-data格式提交图片.关于使用微博开放平台api.授权之类的 ...
- python表单管理系统_python3开发进阶-Django框架的Form表单系统和基本操作
{% csrf_token %} 用户名 密码 {{ error_msg }}
- 框架生成的HTML修改,Django框架form表单验证 修改html标签的样式
经过前面的学习,我们大致可以知道CharField.EmailField等等以Field结尾的方法,只能帮助我们对用户发来的信息做验证,不能生成html标签.字段本身自己虽然只做验证,但是我们可以通过 ...
- Django入门教程(八)Form表单
有时候我们需要在前台用 get 或 post 方法提交一些数据,所以需要用到 html 表单的知识. 1.创建项目,选择File–>New project–>Django ①根据个人需要, ...
最新文章
- TypeError: 'stepUp' called on an object that does not implement interface HTMLInputElement.
- mysql创建函数1418_Mysql中创建函数报“ERROR 1418 ”的解决方法
- CentOS7中通过npm的方式安装Node-RED
- react提交数据到数据库_React型关系数据库事务
- Ant Design Pro v4 is Here
- 【leetcode】416. Partition Equal Subset Sum
- 一文读懂 K8s 持久化存储 | 凌云时刻
- 什么是软件研发费用定额?
- 【IC验证】Questasim使用指导
- springCloud 授权服务器
- Cadence Capture CIS / OrCAD Capture 原理图中显示封装“Show Footprint”的问题
- c语言 (3×3)矩阵转置
- <script>alert(1)</script>怎么在页面显示且不出现功能
- 简易验收管理系统的设计(php)
- 组合数学——Nim取子游戏 太有趣了
- (升级版)构建狂拽炫酷屌的MySQL监控平台
- GNSS原理及技术(二)——卫星定位原理
- 服装企业如何通过知识管理提升创新能力?
- 给图像添加噪声(椒盐噪声,高斯噪声)
- 线性箭头用css3,css3实现小箭头各种图形效果