指南:许多朋友询问了Django如何称呼图片上传。本文的首席执行官注释将为您提供一个详细的答案,以供所有人参考。我希望这对每个人都会有所帮助!让我们一起看看!
Django有两种类型的静态文件,即静态和媒体。
增加Media_url和Media_root
进口:
修改urlpatterns:
在本地调试中,setter.py文件设置为真实为true
注意:upload_to选项
使用nginx处理django静态文件,nginx.conf文件媒体配置如下:
自动化接口时,有时会遇到图片上传的接口。目前,内容类型不是应用程序/JSON。
这是DRF编写图片上传界面和测试。
1.写图片上传界面
首先创建一个文件夹我们要存储文件,并在settings.py中配置路径:
在项目的urls.py中配置媒体路线:
在应用程序的models.py中创建模型:
并在serializer.py中创建序列化:
写视图。
urls.py配置路由到应用程序:
最后,让我们测试:
在项目中做一个坑。
最初,我觉得映像是在模型中定义的,这可以简化MySQL访问图片。实际上,读取静态图片确实很方便,只有相对路径是正确的。
例如:
但是,当用户需要阅读用户时,路径的问题就会暴露出来。
随便写这个
显然这条路是正确的,但是鹅,Django认为这条路可能来自别人的房子
尝试静态这一路
哦,可以显示图片。
因此,我继续在正在进行的项目中高兴地使用它
似乎仍然没有地方无法使用
图片也是路径,因此请尝试在urls.py上添加匹配项。
在许多博客中也发现了类似的操作。Django文档中有类似的谚语
添加类似匹配项后
可以再次使用。Sescein命令避免快乐,将其添加到您自己的项目中以尝试
Django上传图片:
从PIL导入图像
def uploadimage(请求):
如果request.method =='post':
content = request.files ['image field']
尝试:
img = image.open(content)
#img.thumbnail((500,500),image.antialias)#
img.save(“ abv.png”,“ jpg”)#保存图片
除例外,E:
返回httpresponse(“错误%s”%e)
返回httpresponse(“ ok”)
返回httpresponse(“错误”)
测试HTML:
身体
div class =“ file-box”
form action =“ method =”
输入类型='text'名称='textfield'id ='textfield'class ='txt' /
输入type =“ file” name =“ image field” class =“ file” id =“ image field” size =“ 28” onChange =“ document.getElementById('textfield')。值= this.vartue” / / /
输入type =“ submist” name =“ sumper” class =“ btn” value =“ upload” / / / /
/形式
/div
/身体
结论:以上是首席执行官注明给所有人的Django的所有内容。我希望这对每个人都会有所帮助。如果您仍然想了解有关此信息的更多信息,请记住收集并关注此网站。