django模板中如何导入js、css等外部文件?

本教程只适合Django1.4版本。(1.8版本之后不需要这么麻烦,详见 http://www.cnblogs.com/ryan255/p/5465608.html

html模板里面使用了css,但是直接引用不能。记录下处理办法。

首先是我文件的tree:

mysite:

-myapp:

--admin.py, models.py, _init_.py, views.py, test.py, template文件夹

-mysite:

--_init_.py, settings.py, urls.py, wsgi.py

-manage.py

开始配置:

首先在根目录mysite里新建static文件夹

打开settings.py,在底部添加:

import os
     STATIC_URL = \'/static/\'
     STATICFILES_DIRS = (
          os.path.join(os.path.dirname(__file__), \'../static/\').replace(\'\\\',\'/\'),
    )

打开urls.py,添加:(注意,如果你在blog目录下也建立了urls.py,那么就得在blog/urls.py中做修改。别忘了import settings)

import settings
urlpatterns = patterns(\'\',
    url( r\'^static/(?P<path>.*)$\', \'django.views.static.serve\',{ \'document_root\': settings.STATIC_URL }), 
)

然后将你的css,js文件以及html中引用的静态图片都放置在static文件夹里。

在html模板里调用:

<link rel="stylesheet" href="../../static/css/style.css" type="text/css">

注意,href就是你在static里面css等的路径。

然后启动python manage.py runserver

访问http://127.0.0.1:8000/static/css/style.css

若能访问文件,说明你css等静态文件已经可以被django找到了,这时访问你 的模板对应的页面就可以发现页面可以引用css了