django静态文件的配置
Django static静态配置文件
对于Django来说静态文件一般交由Web服务器处理,Django本身不处理静态文件。为了使Django开发环境能够处理静态文件,Django有和生产环境不同的静态文件配置方式。
Django 版本:1.10
开发(Dev)环境配置
一、STATIC_URL, STATICFILES_DIRS, STATIC_ROOT
1. 在app目录下创建static目录,将静态文件和相关文件夹放到此目录下,如your_app/static/img等
2. 确保settings.py中的INSTALLED_APPS中包含django.contrib.staticfiles,以及Debug为True
3. 设置settings.py中的STATIC_URL的值为“/static/”,作用参考5
4. 在模版开头{% load static %}之后,在模版中使用{{ STATIC_URL }}作为静态文件路径前缀。比如css文件your_app/static/css/bootstrap.min.css,那么应用代码为<link href="{% static "css/bootstrap.min.css" %}" rel="stylesheet">
5. 可以测试单独通过url访问静态文件(http://127.0.0.1:8000/static/css/bootstrap.min.css)
6. STATICFILES_DIRS用来配置一些额外的静态文件的地址,如下配置。模版中访问的时候,参考4即可。
STATICFILES_DIRS = [
os.path.join(BASE_DIR, "static"),
'/var/www/static/',
]
7. STATIC_ROOT, 设置绝对路径, 在collectstatic运行的时候会把静态文件拷贝到这个目录中,其更多的作用是在从开发环境到生产环节过程中移植静态文件。
二、MEDIA_ROOT和MEDIA_URL
MEDIA_ROOT:指用户上传的文件,比如在Model里面的FileFIeld,ImageField上传的文件。如果你定义MEDIA_ROOT='/Users/xxx/media/',那么File=models.FileField(upload_to="app01/pic"),上传的文件就会被保存到'/Users/xxx/media/app01/pic'
MEDIA_URL:URL的映射,前后要加上‘/’ 表示从根目录开始,比如“/site_media/”,加上这个属性之后,静态文件的链接前面会加上这个值。
1. 在settings文件中设置MEDIA_URL,比如MEDIA_URL='/media/'
2. 在settings文件中设置MEDIA_ROOT,可以是任意位置(不与STATIC_ROOT相同),用于保存上传的文件
3. urls文件中配置如下,
from django.conf import settings from django.conf.urls.static import static urlpatterns = [ # ... the rest of your URLconf goes here ... ] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
4. 在settings文件中,TEMPLATES中'context_processors'下面新增'django.template.context_processors.media'
配置好后可以使用浏览器访问上传的文件, http://ip:port/MEDIA_URL/upload_path/file. 比如MEDIA_URL设置的是'/media/',MEDIA_ROOT设置的是'/User/xxx/',在models中设置的文件上传到(upload_to=)'app01/pic',那么文件上传后实际存储地址为/User/xxx/app01/pic. 通过URL访问的话:http://ip:port/media/app01/pic/test.jpg. 在前端模版中访问这个上传的图片: <img src="{{ MEDIA_URL }}app01/pic/test.jpg"">
转载来自 http://www.cnblogs.com/cedrelaliu/p/6122726.html
django静态文件的配置的更多相关文章
- django 静态文件的配置
静态文件简介 一.准备文件 Jquery3.3.1文件,文件目录创建 二.创建过程如图 STATIC_URL = '/static/' #静态文件的别名 STATICFILES_DIRS=[ os.p ...
- django静态文件路径配置
在settings.py中加入 STATICFILES_DIRS = [ os.path.join(BASE_DIR,'static') ] 即可在html中引用该目录下的静态文件 <!DOCT ...
- 55 Django静态文件配置
一.Django静态文件配置 1.项目文件夹,新建一个文件夹statics 文件夹 2.在配置文件settings.py中,配置: 文件中有第句: STATIC_URL = '/static/'#静态 ...
- Django 静态文件配置 (Nginx)
初学Django,在访问静态文件时候遇到很多误区,一直配置不成功,在此记录一下. Django静态文件访问分为两种:一种是Debug模式下,测试开发网站时对静态文件的访问,一种是实际生产环境中对静态文 ...
- Django静态文件配置-request方法-ORM简介-字段的增删改查
app的创建注意事项: 在Django新创建的app要在seetings.py中添加注册,才会生效 创建app:django-adminapp an startapp app名称 或者 python3 ...
- Django之CSS,JS静态文件的配置
一. 专门创建一个目录放静态文件,即CSS,JS等. 1)先把jquery.min拿过来. 2)新建一个CSS文件放入样式 3)在login.html中引入.css文件 在login.html中引入. ...
- django 静态文件
django 1.8版本以上 django 静态文件配置. 小作之前, 一直觉得django的静态文件配置非常的麻烦. 1. 要设置url(r'^static/(?P<path>.*)&a ...
- django静态文件处理
django静态文件处理 从开始接接触python这门语言已有四年了,中间陆续的学习,又不断的忘记,所以基本上是没有系统的知识体系.但是挺喜欢这门简洁,强大的动态语言.最近自己私人有个项目要做,虽 ...
- django静态文件
django静态文件(js脚本.CSS.图片等) 默认统一放在每一个app的static文件夹下, 通过收集静态文件命令,自动将每一个app下static文件夹下的文件复制到根目录的static文件夹 ...
随机推荐
- Git 学习第四天
我们已经知道,通过命令 git remote add origin git@github.com/Your.name/file.git 可以连接远程仓库,那么,假如我现在想切换另个一远程仓库的连接应该 ...
- redis集群创建时报错:Sorry, can't connect to node
1.redis集群创建时报错:Sorry, can't connect to node ip,端口等都配置正确的话,还需要将redis.conf文件中的密码注释掉 # requirepass 1 ...
- [已解决]报错:报错AttributeError: 'int' object has no attribute 'upper'
原因:openpyxl版本低,需升级 pip install --upgrade openpyxl
- Pregel的计算过程
- Center OS 7安装 Apollo
声明: 每个人的情况都不一样,所以大家在看教程的时候自行斟酌,最好先扫一遍,再来根据自身情况进行操作.同时,遇到的问题也可能不尽相同,要灵活处理. 了解: Apollo是从原始ActiveMQ的基础构 ...
- boost 实现读写锁
#include <boost/thread/shared_mutex.hpp> #include <boost/thread/locks.hpp> using BoostMu ...
- Spring框架4大原则和主要功能
Spring框架4大原则: 使用POJO进行轻量级和最小侵入式开发 POJO(Plain Ordinary Java Object)简单的Java对象,实际就是普通JavaBeans,是为了避免和EJ ...
- Python 分解质因数
def zys(n, value=[]): for i in range(2, int(n / 2 + 1)): if n % i == 0: value.append(i) zys(n / i, v ...
- MapReduce分区数据倾斜
什么是数据倾斜? 数据不可避免的出现离群值,并导致数据倾斜,数据倾斜会显著的拖慢MR的执行速度 常见数据倾斜有以下几类 1.数据频率倾斜 某一个区域的数据量要远远大于其他区域 2.数据大小倾斜 ...
- JAVA SE Download
{ //https://www.oracle.com/technetwork/java/javase/downloads/index.html }