Django配置static files
来源:互联网 发布:矩阵的行和范数 编辑:程序博客网 时间:2024/06/05 08:33
第一部分:在开发环境下
1.说明
本篇旨在阐明如何在开发环境下为django项目配置static files,所谓开发环境是指以manage.py run server指定的服务器发布,且settings.DEBUG = True,此时将由django程序处理静态文件。
2.django处理静态文件流程
django提供了django.contrib.staticfiles app模块来帮助我们发布静态文件,其响应的流程如下:
1,接收到例如http://www.dataliu.com/static/image/picture.jpg的url,如果STATIC_URL = /static/, 则其交由django.contrib.staticfiles App处理。2.django.contrib.staticfiles先去STATICFILES_DIRS中指定的目录下寻找image/picture.jpg,如果找不到就去各app目录下的static/下寻找,将先找到的文件发布出去。
3.django静态文件配置
熟悉了django处理静态文件的流程,可以知道要配置静态文件,需要配置STATIC_URL和STATICFILES_DIRS两个属性。以及将文件放到相应目录。配置流程如下:
把django.contrib.staticfiles添加到settings.py中的INSTALLED_APPS中.
INSTALLED_APPS = ( 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', #添加该文件!!! )
在settins.py中定义STATIC_URL, 例如:
STATIC_URL = '/static/'
注意:在django1.4以前,需要自己为django.contrib.staticfiles配url,而django1.5以后不需要。
#在django1.4中urls.py 底部加上:
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
urlpatterns += staticfiles_urlpatterns()将静态文件存储到各app目录下的static目录下(目录名必须为static),例如
app/static/image/picture.jpg
如果需要使用一些各app公用的静态文件,则在项目目录下创建一个目录,然后把该目录的路径添加到STATICFILES_DIRS中,例如。
# 在settings.py中添加STATICFILES_DIRS = ( os.path.join(BASE_DIR, "common_static"), # 还可以添加更多路径)
最终结果,一般配置完静态文件后,在settings.py中会有如下一段:(STATIC_ROOT的作用在生产环境时介绍。)
...INSTALLED_APPS = ( ... 'django.contrib.staticfiles', #添加该文件!!! )...# Static files (CSS, JavaScript, Images)# https://docs.djangoproject.com/en/1.8/howto/static-files/STATIC_URL = '/static/'STATIC_ROOT = os.path.join(BASE_DIR, 'collected_static')STATICFILES_DIRS = ( os.path.join(BASE_DIR, "common_static"),)...
第二部分:在生产环境下
1. 说明:
在生产环境下,一般把静态文件交由Nginx等服务器发布,不由django程序处理。此时需要做的就是把所有静态文件拿出来并整理,然后给其他服务器发布。
2. 配置静态文件
第一步:收集静态文件
然而django不需要自己手动去收集并整理静态文件,使用如下指令,会把以前放在app下static中的静态文件全部拷贝到 settings.py 中设置的 STATIC_ROOT 文件夹中,包括admin App中用到的静态文件
python manage.py collectstatic
第二步:交给其他服务器发布
发布的方法很多,不同服务器不一样,可以自行google,这里不过多赘述。
相关文章
官方文档:https://docs.djangoproject.com/en/1.8/howto/static-files/
自强学堂:http://www.ziqiangxuetang.com/django/django-static-files.html
- Django配置static files
- django 1.5 static files 404 error
- django 中配置 static
- 简易配置django的static
- SAE Django配置static文件
- 简易配置Django的Static文件
- django静态文件static路径配置
- 简易配置Django的Static文件
- django 中静态文件配置 static
- django静态文件(static)路径配置
- django使用static的配置-django官网说明
- django -- development环境下static files(静态文件)的设置和调用
- python_Django_6:Static files
- Centos7在ifcfg文件中配置静态路由 Configuring Static Routes in ifcfg files
- Django 学习笔记-STATIC
- django 引用static templates
- Django中static & media的简单配置及图片上传实践
- Django 配置
- 针对e场景活动发布网站使用及产品介绍
- 数据挖掘算法-Apriori Algorithm(关联规则)
- BaseDao基于JPA的实现
- Android 动画 使用 实例 问题 详解
- Stanford机器学习课程(Andrew Ng) Week 1 Model and Cost Function --- 第一节 Model representation
- Django配置static files
- 【sublime】sublime添加浏览器预览快捷键
- Windows下PowerShell监控Keepalived
- HDU ACM 1717 小数化分数2 [数学题]
- 不使用C/C++字符串数据库函数,如何自行编写strcpy()函数?
- Windows下搭建MySQL Master Slave
- 什么是平均值 (Average)?
- weblogic错误页面
- MySQL表数据迁移自动化