django显示图片对新手来说真的算是一个坑。。

  这里记录下小白爬坑的历程。

  首先,你需要一个可以运行的django服务器,能显示正常的html文本,无法显示图片

  这是html的文本,可以显示文字,无法显示图片

<h1>An Image Test</h1>
<img src="medias/1.jpg">

  首先,在网上搜到的办法,搜到了几个复杂的设置方法,结果都失败了。

  有一个类较为简单,可以试一试

  大概是这样的:

  在 django 中不像PHP那样有根目录的概念 而取而代之的是包的概念, 通过URLS.PY 来提供每个URL 对应的DJANGO的 函数来显示页面 
  在包的 temolates目录中 的html页面里面 是不能直接写图片 或者 CSS JS 文件的 相对|绝对 路径的 , 而是用 URLS 提供的URL对应 图片/js/css 目录的

  调用方法如下:

url(r'^medias/(?P<path>.*)$', 'django.views.static.serve', {'document_root': '/web/www/python/templates/images'}),

r'^medias/(?P<path>.*)$' # 是要 展示url的 方法/文件名
{'document_root':'/web/www/python/templates/images'} # 是要 提供 图片目录的真实路径

  这样 就能用 <img src="/medias/images.gif" /> 调用 图片了

  一切都完成了,结果报错???

  (r'^medias/(?P<path>.*)$', 'django.views.static.serve', {'document_root': '/web/www/python/templates/images'}), 中django报错

  说是'django.views.static.serve'调用有问题,

  改成url(r'^medias/(?P<path>.*)$', 'django.views.static.serve', {'document_root': '/web/www/python/templates/images'}),也有问题,出现 TypeError: view must be a callable or a list/tuple in the case of include().

  后来发现(r'^medias/(?P<path>.*)$', 'django.views.static.serve', {'document_root': '/web/www/python/templates/images'})估计是老版本django的调用方法,在新版本djago中改用url(“”,)来调用,将'django.views.static.serve' 改成import的方式:

from django.views.static import serve

url(r'^medias/(?P<path>.*)$', serve, {'document_root': '真实文件的目录/static/images'}), 

  打开浏览器

  直接访问图片地址:

  也没问题,大功告成,哈哈

如何使用django显示一张图片的更多相关文章

  1. @Html.Raw显示一张图片

    在ASP.NET MVC中,显示一张图片,是很方便的事情,完全可以在控制器中组合html代码,并传给视图. 下面一个简单的例子: public ActionResult HtmlRawImage() ...

  2. 仿AS语法来写HTML5—第1章,显示一张图片

    最近开始学习html5,因为一直都是研究as,所以还是觉得as顺眼一点,但是html5也不能不学,于是就想出了,可以把html5用as的语法来写出来,做游戏应该来的比较顺手一些,下面开始第一篇 第一篇 ...

  3. swiper轮播问题之二:默认显示3张图片,中间显示全部两边显示部分

    其二:项目遇到比较有点要求的轮播图,默认显示3张图片,中间显示全部,两边显示部分.如图: 网上找了也没有找到合适的,最后经过自己摸索写了出来,贴出代码分享给大家.         CSS .swipe ...

  4. 使用Fresco实现简单的显示一张图片

    使用Fresco实现显示一张图片 仅仅是下载一张图片,在下载完之前,先显示一张站位图 效果图 源码 下载地址(Android Studio工程):http://download.csdn.net/de ...

  5. OpenCV提取显示一张图片(或者视频)的R,G,B颜色分量

    使用OpenCV可以提分别提取显示一张图片(或者视频)的R,G,B颜色分量.效果如下. 原图: R: G: B: 示例代码如下,貌似很久以前网上找的的,逻辑很清晰,就是把R,G,B三个分量分开,然后显 ...

  6. Python+OpenCV图像处理(一)——读取显示一张图片

    先在此处先声明,后面学习python+opencv图像处理时均参考这位博主的博文https://blog.csdn.net/u011321546/article/category/7495016/2? ...

  7. opencv实例一:显示一张图片

    第一个简单的实例,显示一张图片: 1)代码如下 /*************************************************************************** ...

  8. django显示SQL语句

    django显示SQL语句 有时候我们使用模型查询数据,但是并不知道具体执行的SQL语句到底对不对.那么可以通过下面的方法打印出具体执行的SQL语句.这样有助于调试: queryset = MyMod ...

  9. 用仿ActionScript的语法来编写html5——第一篇,显示一张图片

    第一篇,显示一张图片 一,代码对比 as代码: public var loader:Loader; public function loadimg():void{ loader = new Loade ...

随机推荐

  1. codves 2021中庸之道

    2021 中庸之道 http://codevs.cn/problem/2021/ 题目描述 Description 给定一个长度为N的序列,有Q次询问,每次询问区间[L,R]的中位数. 数据保证序列中 ...

  2. HDU 5143 DFS

    分别给出1,2,3,4   a, b, c,d个 问能否组成数个长度不小于3的等差数列. 首先数量存在大于3的可以直接拿掉,那么可以先判是否都是0或大于3的 然后直接DFS就行了,但是还是要注意先判合 ...

  3. java selenium常用API(WebElement、iFrame、select、alert、浏览器窗口、事件、js) 一

     WebElement相关方法 1.点击操作 WebElement button = driver.findElement(By.id("login")); button.clic ...

  4. 张鑫旭:Promise异步编程模式

    参考文章: http://www.zhangxinxu.com/wordpress/2014/02/es6-javascript-promise-%E6%84%9F%E6%80%A7%E8%AE%A4 ...

  5. Coffeescript的安装与编译

    安装 npm install -g coffee-script 在cmd中输入coffee可以进入coffeescript的命令行模式(REPL),然而到我写完这篇博文为止,我觉得这并没有什么卵用 C ...

  6. Linux查看日志三种命令

    第一种:查看实时变化的日志(比较吃内存) 最常用的: tail -f filename (默认最后10行,相当于增加参数 -n 10) Ctrl+c 是退出tail命令   其他情况: tail -n ...

  7. HDU 2062 Subset sequence (找规律)

    题目链接 Problem Description Consider the aggregate An= { 1, 2, -, n }. For example, A1={1}, A3={1,2,3}. ...

  8. jQuery入门——(二)

    0.基本知识 $与jQuery等价,$.fun代表jQuery的全局方法. jQuery必须首先导入JQuery库, jQuery的事件都不带on,例如 $("#btn").cli ...

  9. perl6: hash小笔记

    > ,,, { => , => } > my $a = :%h h => { => , => } > $a.perl :h({, }) > my ...

  10. linux系统iostat命令详解

    iostat  -k 3 5  (以KB为单位,每3秒统计一次,共统计5次) • avg-cpu: 总体cpu使用情况统计信息,对于多核cpu,这里为所有cpu的平均值    %user    用户空 ...