django框架的使用,想引用静态css文件,怎么都引用不到,从网搜了好多,大多因为版本问题,
和我现在的使用的dango1.1配置不同,根据资料和公司的项目最终解决,于是想整理总结下各版dango静态文件的配置,以备后查;
配置原因:由于django不处理静态文件(css、js、image等),而是交与web服务器处理。
而django的路径处理和其他web框架有些区别,它需要我们手动的配置静态文件的路径,而不能直接引用。
静态文件的配置的分两种:
第一种为django的开发服务器的配置
第二种是生产服务器的nginx或apache的web服务配置
第一种,django的开发服务器的静态文件配置,根据django版本的不同,有着比较大的区别。
dango 1.1静态文件配置:
1、在项目目录中同settings目录建立static文件夹,其中存放 js 、css 、images文件,可再单独创建文件存放。
我的文件路径:
2、在settings中增加静态文件目录配置:
STATIC_PATH = os.path.join( os.path.dirname(__file__) , 'static' )
3、在url.py 中增加静态文件的路径 :
# u静态文件
urlpatterns += patterns('',
#(r'^static/(?P<path>.*)$', 'django.views.static.serve',{'document_root': settings.STATIC_PATH}),
(r'^images/(?P<path>.*)$' , 'django.views.static.serve',
{
'document_root': os.path.join( settings.STATIC_PATH , 'images' ) } ) ,
(r'^css/(?P<path>.*)$' , 'django.views.static.serve',
{
'document_root': os.path.join( settings.STATIC_PATH , 'css' ) } ) ,
(r'^js/(?P<path>.*)$' , 'django.views.static.serve',
{
'document_root': os.path.join( settings.STATIC_PATH , 'js' ) } ) ,
)
4、在模板中引用:
<link href="/css/bootstrap.min.css" rel="stylesheet">
<script src="/js/ie-emulation-modes-warning.js"></script>