http://python.usyiyi.cn/django/index.html

http://m.blog.csdn.net/blog/qingyuanluofeng/44877399

http://www.idjango.com/content/15/

[原]手把手教你:解决django关于图片无法显示的问题

2015-4-4阅读177 评论1

先聊聊吧,作为一名程序猿,最近在一个人在帮企业写网站,用的架构呢,是:mongodb + python + django + html。之前搞网页,图片,css文件,js文件的路径是直接相对于***.html文件的,没想到等到真正要部署到 django的服务器上,所有的图片全部无法显示。css文件和js文件同样没有效果。

搞了两三天,终于解决了这个问题。

程序猿容易吗?不容易,总是被各种小问题被捆住了手脚,而没有把真正的精力用在:算法,并发,大数据 处理,内存优化这些问题上,总是被大多数人经历的小问题再次重复经历,这是一条老路。

我的想法就是:通过几分钟告诉你问题的原因和解决方法,让一个可能在你身上需要几天解决的问题,几分钟解决,把精力花在一个程序猿应该花的身上。如果觉得好,不妨不要吝啬您的一两句评论。

只有程序猿才能理解程序猿是多么的。。。

原因:django部署方式比较特别,采用静态文件路径:STATICFILES_DIRS的部署方式,之前你写的相对路径,绝对路径因为缺少静态文件路径而全部失效

解决方法:

步骤1:在settings.py文件的最后加上以下内容:

STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(os.path.dirname(__file__),'static')
# 设置图片等静态文件的路径
STATICFILES_DIRS = (
    ('css',os.path.join(STATIC_ROOT,'css').replace('\\','/') ),
    ('js',os.path.join(STATIC_ROOT,'js').replace('\\','/') ),
    ('images',os.path.join(STATIC_ROOT,'images').replace('\\','/') ),
    ('upload',os.path.join(STATIC_ROOT,'upload').replace('\\','/') ),
)

步骤2:在urls.py文件的开头第一行和第二行分别加上以下内容:

from django.contrib.staticfiles.urls import staticfiles_urlpatterns

from django.contrib import staticfiles

在urls.py文件最后加上以下内容:

#设置静态文件路径
urlpatterns += staticfiles_urlpatterns()

步骤3:设置静态文件的目录,很关键

整个文件的目录结构如下

project---project

---app

|

----static

|

-----templates

你的static和templates处于同级目录,然后将你的images,css,js文件夹放在static目录下面

测试:在你模板,也就是html文件中

<p><img src="/static/images/bg_information.png.png"  width="980" height="180"></p>

改成自己的图片名称,注意图片前缀:/static/images/ 别写成 static/images/ 这样会无法显示

大功告成,嗨起来。

解决django关于图片无法显示的问题的更多相关文章

  1. 【Web】解决简书图片不显示问题“系统维护中,图片暂时无法加载”

    简书不显示图片的解决方法 首次编辑于2019-6-6 最近几天在浏览简书上的文章时,发现图片显示不出来,提示"系统维护中,图片暂时无法加载". 猜测应该是简书由于某种原因暂时屏蔽了 ...

  2. 解决css引用图片不显示问题:background-image: url(../image/document.png);

    .icon-document { background-image: url(../image/document.png); display:block; float: left; width: 25 ...

  3. 解决WPF导入图片不显示的问题

    想在XAML中使用一张图片,得先将其添加到工程中, 方法是: 在项目中双击Resources.resx,选择图像,在添加资源的下拉菜单中选择添加现有文件,然后选择文件,添加图片进来后可以在Resour ...

  4. Django关于图片验证码显示笔记

    .访问页面 /login/ - 内部需要创建一张图片,并且给用户返回 - 创建一个白板 Session存放验证码 .POST - 根据用户提交的数据与session里面比较 .登录界面 和 验证码 分 ...

  5. django中图片的上传和显示

    上传图片实际上是 把图片存在服务器的硬盘中,将图片存储的路径存在数据库中. 1 首先要配置文件上传的路径: 1.1 建立静态文件目录 在项目根目录下 新建一个 static文件夹,下面再建立一个med ...

  6. ecshop验证码图片无法显示终极解决办法

    ecshop验证码图片无法显示终极解决办法 ECSHOP教程/ ecshop教程网(www.ecshop119.com) 2014-06-06   客户在安装好ecshop之后所有前台的证码不显示,后 ...

  7. 解决ueditor编辑器图片在线管理图片无法显示

    使用ueditor,点击在线管理,服务器图片路径显示不正确,如下图所示  查看源码,如下:  发现图片src中中间多了一长串的项目跟路径,解决的办法是 把  jsp/controller.jsp 里面 ...

  8. python 1: 解决linux系统下python中的matplotlib模块内的pyplot输出图片不能显示中文的问题

    问题: 我在ubuntu14.04下用python中的matplotlib模块内的pyplot输出图片不能显示中文,怎么解决呢? 解决: 1.指定默认编码为UTF-8: 在python代码开头加入如下 ...

  9. django上传并显示图片

    环境 python 3.5 django 1.10.6 步骤 创建名为 testupload的项目 django-admin startproject testupload 在项目testupload ...

随机推荐

  1. Html5所见即所得的几款框架

    http://www.csdn.net/article/2013-10-21/2817243-8-useful-html5-frameworks

  2. 4月13日 php

    用php打印乘法表: <html> <head> <title>我的第一个PHP页面</title> </head> <body> ...

  3. 给大家推荐几款OSX上非常好工具(针对程序员)

    前两天,在App Store无意中发现几款免费工具,感觉非常好用,推荐给大家,希望大家喜欢. 一个是帮助文档管理软件,Dash.以前在Windows上开发,经常要自己搜集一些手册,文档,什么html手 ...

  4. Android学习笔记--Handler用法总结

    不错的例子:http://www.cnblogs.com/menlsh/archive/2013/06/07/3125341.html 转自:一叶知秋的博客 http://blog.sina.com. ...

  5. 关于开源中文搜索引擎架构coreseek中算法详解

     Coreseek 是一款中文全文检索/搜索软件,以GPLv2许可协议开源发布,基于Sphinx研发并独立发布,专攻中文搜索和信息处理领域,适用于行业/垂直搜索.论坛/站内搜索.数据库搜索.文档/文献 ...

  6. (转)Oracle Data Guard配置

    data guard配置的条件1.在主库和从库的所有机器上必须安装同一个版本的Oracle企业版.2.主库必须运行在归档模式下.3.主库和从库的操作系统必须一样(允许版本不同),从库可以使用与主库不同 ...

  7. C# 使用Sqlite 如何返回统计行数

    Visual 2010 with Sqlite 需要这样Query 数据: select count(*) from tblOrder where OrderStartTime >= '2013 ...

  8. MySQL数据库 常用操作

    1:使用SHOW语句找出在服务器上当前存在什么数据库: mysql> SHOW DATABASES; 2:创建一个数据库MYSQLDATA mysql> CREATE DATABASE M ...

  9. JS字符串拼接优化

    // 请把以下用于连接字符串的JavaScript代码修改为更高效的方式 var htmlString = ‘ < div class=”container” > ’ + ‘ < u ...

  10. IIS 问题解决

    一.网站发布后 报500错误 解决办法:重新向iis注册framwork: 二.试图加载格式不正确的程序.(Exception from HRESULT: 0x8007000B) 解决办法:对应应用程 ...