导读:很多朋友问到关于django怎么写上传图片的相关问题,本文首席CTO笔记就来为大家做个详细解答,供大家参考,希望对大家有所帮助!一起来看看吧!
Django model.ImageFiled 图片的上传及显示
做项目中的一个坑。。
本来觉得在model里面定义了ImageFiled,能简化MySQL存取图片。事实上在读取静态图片的时候确实很方便,只需要相对路径正确即可。
eg:
但是当需要读取到用户自己上传的图片的时候,路径的问题就暴露出来了。
这个随便写写就好了
明明路径是对的,然鹅,Django觉得这个路径可能是别人家的
试试把这个路径静态了
呵,图片能够显示了。
于是继续满心欢喜地用到了正在进行的项目中
貌似有的地方还是不能用
图片也是路径诶,所以试着在urls.py加上一个匹配。
在许多博客里也找到了类似的操作,Django document中也有类似的说法
加入了类似的匹配之后
又能使用了。。为了避免白高兴一场,在自己的项目里面加入试一下
django mongoengine FileField 上传图片问题,很急,高悬赏在线等,解决追加!
django上传图片:
from PIL import Image
def UploadImage(request):
if request.method == \'POST\':
content = request.FILES[\'ImageField\']
try:
img = Image.open(content)
#img.thumbnail((500,500),Image.ANTIALIAS)#对图片进行等比缩放
img.save(\"abv.png\",\"jpg\")#保存图片
except Exception,e:
return HttpResponse(\"Error %s\"%e)
return HttpResponse(\"ok\")
return HttpResponse(\"error\")
测试html:
body
div class=\"file-box\"
form action=\"\" method=\"post\" enctype=\"multipart/form-data\"
input type=\'text\' name=\'textfield\' id=\'textfield\' class=\'txt\' /
input type=\"file\" name=\"ImageField\" class=\"file\" id=\"ImageField\" size=\"28\" onchange=\"document.getElementById(\'textfield\').value=this.value\" /
input type=\"submit\" name=\"submit\" class=\"btn\" value=\"upload\" /
/form
/div
/body
Django:上传图片并显示
Django的静态文件有两类,分别为 static 和 media 。
增加 MEDIA_URL 和 MEDIA_ROOT
导入:
修改urlpatterns:
在本地调试需要将 setting.py 文件中, DEBUG 设置为 True
注意: upload_to 选项
使用nginx处理django静态文件, nginx.conf 文件 media 配置如下:
django上传图片并且带有预览功能
就用uploadfy呗,JS中在返回成功之后你自己在HTML中写个img标签,把返回的URL丢到IMG里不就完了,我们也用这个插件,还不错
Django REST framework编写图片上传接口并测试
在做接口自动化时,有时会遇到图片上传的接口,这时Content-Type就不是application/json。
这里使用DRF编写一个图片上传接口,并测试。
一、编写图片上传接口
首先创建一个我们希望用来存放文件的文件夹,并且在settings.py中配置路径:
在项目的urls.py中配置media的路由:
在应用的models.py中创建模型:
并且在serializers.py中创建序列化:
编写视图views.py:
给应用的urls.py配置路由:
最后我们测试一下:
Django上传图片后怎么使用图片呀喂
麻烦。自己下载一个upload的ajax库。然后配置好django的后台。
简单的办法就是,完全自己处理文件上传,用form来做。这个简单。就是界面差些。
结语:以上就是首席CTO笔记为大家整理的关于django怎么写上传图片的相关内容解答汇总了,希望对您有所帮助!如果解决了您的问题欢迎分享给更多关注此问题的朋友喔~
以上内容为新媒号(sinv.com.cn)为大家提供!新媒号,坚持更新大家所需的互联网后端知识。希望您喜欢!
版权申明:新媒号所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流,不声明或保证其内容的正确性,如发现本站有涉嫌抄袭侵权/违法违规的内容。请发送邮件至 k2#88.com(替换@) 举报,一经查实,本站将立刻删除。