搜索
您的当前位置:首页正文

django如何显示图片

2024-08-01 来源:育乐教育网

Django显示图片的方式

(视频教程推荐:)

1、图片所在文件夹位于项目的根目录:dj/image/1.jpg

这时可以在setting.py文件中加上如下代码:

STATIC_URL = '/static/'
STATICFILES_DIRS = [
    os.path.join(BASE_DIR, 'static'),
    os.path.join(BASE_DIR),
#BASE_DIR是项目跟目录
]

STATIC_URI=’/static/'的作用是当链接中含有/static/时,链接后面的文件django会在各个app中的static 文件夹中查找对应的文件,而STATICFILES_DIRS的作用是,在app中没有找到对应的文件时也会在其指定的目录下去寻找文件。因此我们要访问 www.123.com/static/image/1.jpg 时,django除了在app下的static文件夹寻找,还会在 dj/static/ 和dj/下寻找。

2、

re_path(r'^image/(?P<path>.*)$', serve, {'document_root': os.path.join(BASE_DIR, 'image')})

dj2.0以后普通的url直接使用path写就可以,不用使用正则。而想用正则时,则要使用re_path ,否则正则不生效。serve 是from django.views.static import serve 从这导入的。当访问 www.123.com/image/1.jpg 时,dj就会在dj/image下查找文件。这个url匹配既可以写在项目的urls.py中,也可以写在各app的urls.py中。第二种方法的好处就是可以将文件存在任何地方,而且文件的url也不要求是统一的。如果使用第一种方法,则所有静态文件的url都必须以‘static’开头。

由于在实际项目中,图片类的文件都是存储在第三方服务器上,所有在html中要生成绝对路径,在model中定义的ImageField字段中,自动含有一个url属性,这个属性可以根据setting文件中的MEDIA_URL的值生成一个绝对路径。,如果没有设置这个值,则还是相对路径,如果你的图片又不在本地服务器,那就访问不到了。

总结:

1,保证图片等文件的路径一定是以/static/开头,则可以将文件保存在各app中的static文件夹中,或者你自己定义一个目录,并将这个目录添加到STATICFILES_DIRS,在html中设置url时要使用模板的

2,可以将文件存到任何位置,在url匹配中,使用re_path(r’^/(?P.*)$’, serve, {‘document_root’: os.path.join(BASE_DIR, ‘image’)}) 也可以访问到图片资源。

3,在html中图片的地址可以使用相对地址,也可以使用绝对地址,image.url可以使用setting中的MEDIA_URL拼接出一个绝对路径。

相关教程推荐:

育乐教育网还为您提供以下相关内容希望对您有帮助:

如何在django显示图片?

这个貌似有点问题。下面的可以(python2.7?django1.5)把jpg等图片文件,放到某个app下面的static文件夹(appName)文件夹下面就可以了(前提是你的css,js等文件已经能够正常访问)。那么使用类似这样的就能访问了 有点事,需要出去趟,回来在处理吧...django如何显示图片并与其交互其实很简单的,不过你...

django中怎么添加图片显示(2023年最新分享)

请问用python+Django如何显示图片呢?如何显示一个纯静态的HTMl?急要显示图片、CSS、JS之类的静态文件,需要在settings里配置静态文件目录,就是MEDIA_ROOT,MEIDA_URL,STATIC_ROOT和STATIC_URL,比如media/,static/。其实Django本身是不进行静态文件处理的,静态文件是交给Web服务器,如Apache来处理的。要...

django怎么加载图片(2023年最新整理)

Django:上传图片并显示Django的静态文件有两类,分别为static和media。增加MEDIA_URL和MEDIA_ROOT 导入:修改urlpatterns:在本地调试需要将setting.py文件中,DEBUG设置为True 注意:upload_to选项 使用nginx处理django静态文件,nginx.conf文件media配置如下:django里,img标签可以加载http图片但是https图片加载...

django怎么显示页面的背景图片?

django-静态文件能加载进入,但是在页面上却显示不出来用的是谷歌浏览器?很多浏览器需要使用ctrl+F5才能强制刷新js和css文件的载入。你试试。另外,不建议使用src='/static/xxx.css'的方式,这样是相对路径,容易出问题,并且写死了。通常都是src='{%static'xxx/xxx/xxx.css'%}'的方式。更多参考:...

django中怎么引入图片(django显示图片)

在a标签里面嵌套一个img标签即可给图片添加链接 Django上传图片后怎么使用图片呀喂麻烦。自己下载一个upload的ajax库。然后配置好django的后台。简单的办法就是,完全自己处理文件上传,用form来做。这个简单。就是界面差些。django中怎么载入css等静态文件Django版本1.10?网站通常需要js,css,图片等文件,...

请问用python+Django如何显示图片呢?如何显示一个纯静态的HTMl?急_百 ...

要显示图片、CSS、JS之类的静态文件,需要在settings里配置静态文件目录,就是MEDIA_ROOT,MEIDA_URL,STATIC_ROOT和STATIC_URL,比如media/,static/。其实Django本身是不进行静态文件处理的,静态文件是交给Web服务器,如Apache来处理的。要显示一个纯HTML文件,可以将这么HTML文件拷贝到模版目录,在URL里...

django网页图片加载不出来怎么回事(django模板图片加载不出来)_百度...

1、django里,img标签可以加载http图片但是https图片加载不了,求解决2、django取出pymongo中存储的中文图片路径后,读取该路径在网页上展示没有出现图片3、Django后台上传的图片前台怎么显示不出来?路径的问题怎样解决?4、django无法加载出css样式,不管是admin还是自己创建的html都无法加载django里,img标签...

django怎么引用图片(2023年最新分享)

在a标签里面嵌套一个img标签即可给图片添加链接 django如何显示图片并与其交互其实很简单的,不过你的提问不够具体,建议先去学习一下基础的,不懂的再追问我 推荐一些比较好的资源:当入门之后建议看官方的文档,有问题就去搜索,建议用google,找外文的还是要精准些 如果你不熟悉python,也要先学习python ...

django如何上传头像并显示(2023年最新解答)

前端直接使用FileReader?可以直接读取图片在前端显示,可以在用户点击确定后再通过ajax?上传到后端(当然,你也可以直接通过form表单submit?提交)用户点击上传文件的时候,直接用ajax?把图片是传到后端,后端回传图片在服务器中的地址,前端把这个图片显示出来。Django后台上传的图片前台怎么显示不出来?路径的...

django如何生成动态页面(django展示图片)

最后重新运行项目,img等本地静态文件就可以被django找到了,这时模板对应的页面就可以显示使用img等文件了。django是做什么的?Django是基于Python的免费和开放源代码Web框架,它遵循模型-模板-视图(MTV)体系结构模式。它由DjangoSoftwareFoundation(DSF)维护,这是一个由非营利组织成立的独立组织。Django的...

Top