受Django版本更新的影响,其静态文件配置很乱,网上有各类说法,其实大多有道理的,只是没说明是针对哪一个版本的Django。但1.4版本(可能包括其以后的版本)静态文件配置至关简单,在此记录下。 html
│ manage.py │ ├─hello │ │ models.py │ │ tests.py │ │ views.py │ │ __init__.py │ │ │ └─static │ a.txt │ ├─templates └─untitled settings.py urls.py wsgi.py __init__.py
以上的静态文件访问无需对Django作任何配置,因Django自动开启了settings.py文件下INSTALLED_APPS的'django.contrib.staticfiles'。这里并未在urls.py里设置如下的代码,虽网上不少说这是必需的,但至少在1.4版本下是非必需的 python
from django.contrib.staticfiles.urls import staticfiles_urlpatterns urlpatterns += staticfiles_urlpatterns()
如今可以确认的是Django处理静态文件的是下面这个库文件:
shell
\Lib\site-packages\django\contrib\staticfiles\finders.py
生产环境下通常是把静态文件放在项目根目录下的static目录下。以百度应用引擎(BAE)为例: django
PS:测试过程当中发现BAE竟对静态文件的后缀名大小写敏感,本地开发环境下却没有此现象。 服务器
参考:
http://blog.yangyubo.com/2012/07/26/django-staticfiles/
http://www.cnblogs.com/bourneli/archive/2013/01/21/2869327.html app