关于Django中Static和Media的设置问题(尤其是css和js静态文件加载的问题),网上有很多回答,但是发现有相当一部分回答并不能解决问题。有的可能是Django版本问题,有的是把media和static搞混了。下面是关于Django 1.9+ 中static与media的总结:

区别:

  • Static是不变的,形成网站的核心部件,如 CSS文件,JS文件,背景图片等;
  • Media是变动的,由用户定义的文件,如 用户头像, 用户上传的图片或视频等。

配置方法:##

1.Static

  1. 在项目根目录新建static文件夹
  2. 在setting.py中设置:
    • STATIC_DIR=os.path.join(BASE_DIR,'static')
    • STATICFILES_DIRS=[STATIC_DIR,] (当由多个静态文件目录时,可加入)
  3. 在模板文件的 下面(不要写到最开头),写入{% load staticfiles %}
  4. 在模板文件中引用:{% static '<static文件夹中的目标文件路径>' %}

2. Media

  1. 在项目根目录新建media文件夹
  2. 在setting.py中设置
    • MEDIA_DIR=os.path.join(BASE_DIR,'media')
    • MEDIA_ROOT=MEDIA_DIR
    • MEDIA_URL='/media/'(前后都有斜杠)
      • TEMPLATES设置中的context_processor选项中加入:'django.template.context_processors.media',
  3. 在项目urls文件中
    • from django.conf import settings
    • from django.conf.urls.static import static
    • 在文件最后加上: +static(settings.MEDIA_URL,document_root=settings.MEDIA_ROOT)
  4. 在模板文件中引用:

最新文章

  1. fir.im Log Guru 正式开源,快速找到 iOS 应用无法安装的原因
  2. jquery qrcode参数
  3. nginx连接php fastcgi配置
  4. C# 同步/并发队列ConcurrentQueue
  5. Python模块(getpass)
  6. HTML 链接
  7. HDU 4169 树形DP
  8. 【成都GamEver游戏公司诚邀服务器伙伴】【7~15k一年4次项目奖金】
  9. 有关android UI 线程
  10. 最新搭建GIT服务器仓库
  11. Java读取文件方法和给文件追加内容
  12. FLV封装格式及分析器工具
  13. 【转】 Linux内核中读写文件数据的方法--不错
  14. XML Schema (1)
  15. HDOJ 1391 Number Steps(打表DP)
  16. python之路 - 基础2
  17. ADB——应用交互
  18. [SDOI2017]天才黑客[最短路、前缀优化建图]
  19. 洛谷P4035 [JSOI2008]球形空间产生器(高斯消元)
  20. 关于linux-Centos 7下mysql 5.7.9的rpm包的安装方式

热门文章

  1. 【Azure 事件中心】在微软云中国区 (Mooncake) 上实验以Apache Kafka协议方式发送/接受Event Hubs消息 (Java版)
  2. Jenkins(3)拉取git仓库代码,执行python自动化脚本
  3. “科大讯飞杯”第18届上海大学程序设计联赛春季赛暨高校网络友谊赛 G 血压游戏
  4. 【poj 2478】Farey Sequence(数论--欧拉函数 找规律求前缀和)
  5. Educational Codeforces Round 87 (Rated for Div. 2) D树状数组加二分删除的值
  6. How many integers can you find HDU - 1796 容斥原理
  7. HDU - 6030 矩阵快速幂 +多组输入快速幂板子
  8. SQL Server 远程连接配置
  9. kubeadm---高可用安装
  10. 杭电多校HDU 6599 I Love Palindrome String (回文树)题解