django2 多文件上传及图片显示

  1. 云栖社区>
  2. 博客>
  3. 正文

django2 多文件上传及图片显示

code_sky 2018-10-18 13:10:00 浏览2925
展开阅读全文

文件上传在web开发中是最常见的功能了, 今天主要介绍django2多文件上传。虽然网上有很多类似的教程,但是我还是要说一下在django中整个文件上传的流程。通过以下几步来介绍:

第一步:新建一个Django(版本2.x及以上)项目,然后新建一个app(我这里叫upload),目录结果如下:



img_05c41787a2091b9100bf29927aa89034.png




















第二步:在settings文件中添加app配置以及上传文件路径的配置,如下:

1.在settings中的INSTALLED_APPS 注册app(upload)

2.添加上传文件的目录配置:

MEDIA_URL ='/media/'

MEDIA_ROOT = os.path.join(BASE_DIR, 'media')

当然,这个路径你自己可以随便定义,我这里定义成‘media’

第三步: 在app(upload)中的view文件中编写函数用于上传图片和显示图片,如下:

img_9d40c8fb391ac5bca49ed4e2d85ac9d2.png















函数写好后就是在urls里添加路由:

img_0b3ee6170795abb460547d8be90a9efa.png


附上upload.html文件

<!DOCTYPE html>

<html lang="en">

    <meta charset="UTF-8">

    <title>django多文件上传

<form method="post" enctype="multipart/form-data">

{%csrf_token %}

<input type="file" name="files" multiple>

<button>开始上传

</html>

ok,运行项目就可以显示上传界面了,如下:


img_123040d480b14cb33a9896402357acc8.png

第四步:上传文件的逻辑处理:


img_c09b8ad2ba14119e4e1db3ada2438137.png






附上显示图片的show.html:

<!DOCTYPE html>

<html lang="en">

    <meta charset="UTF-8">

    <title>显示图片

  {%for image in images %}

<div><img src="{{image }}"></div>

{%endfor %}

</html>


第五步:处理图片显示问题,虽然可以上传文件了,但是图片文件却不能显示,只需要在urls做一个配置就可以了。



img_40a0687df955e108c29f51ba2c56f450.png




第六步:测试


img_4dc2246fa06cb6983549a174e865628a.png

总结:django 多图上传就完成了,看是简单,但是需要做很多工作,所以记录在这里,以便于有需要的时候方便学习和使用。喜欢我的文章记得关注我哦,以后会分享更多干货噢!








网友评论

登录后评论
0/500
评论
code_sky
+ 关注