[Django模板系统]在模板中加载css/js等静态文件

        注:以下内容转载自 现代魔法学院 网站的 在模板中加载css/js等静态文件 一文,仅供学习使用。

        Django 的 template 确实很强大,但是我们不可能把 CSS 文件也嵌入到 template 中。在使用 Django 开发的 Web 项目中是避免不了使用 css、javascript、js 等静态文件的,而对于这些静态文件的处理,Django 官网这样写:

        Django itself doesn’t serve static (media) files, such as images, style sheets, or video. It leaves that job to whichever Web server you choose.

        就是说 Django 本身不处理类似于图片、样式表、视频等静态文件,它将此项工作交给了你选择的 Web 服务器。

        这里我们先不谈 Web 服务器的处理,因为我们现在用的是 Django 自带的服务器,所以这里只是解决测试环境里的静态文件处理。

        处理方法也很简单,首先是在 urls.py 里加入:

from django.conf import settings

urlpatterns = patterns('',
    (r'^files/(?P<path>.*)$', 'django.views.static.serve',{'document_root': 'E:/PythonProject/nowamagic/files'}),
)

        按照上面的规则改成你的 css/js 目录即可。

        怎么用?

<link rel="stylesheet" type="text/css" media="all" href="/files/style.css">

        就这样,Django 的模板就可以加载静态的 css,js 什么的了。

        而对于 django.views.static.serve 方法,django官网说得很清楚:

        Using this method is inefficient and insecure . Do not use this in a production setting. Use this only for development.

        就是说这种方法是低效且不安全的,不要在生产环境使用此方法,只在开发环境使用。这个要了解。

        当我们把项目搬到网上,我们再来谈 Web 服务器端的方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值