Django -> debug模式下的静态文件服务(/media/)

正式发布django项目的时候,如果存在静态文件(一般会统一放在名称为media或static的目录下),则需要建立url到文件系统的映射,例如,使用nginx的时候我们需要进行这样的配置.

# Django media
        location /media {
                alias /home/lyndon/github/Mathematician/dijkstra/media;
        }

        location /static {
                alias /home/lyndon/github/Mathematician/dijkstra/static;
        }

然后把页面的请求转发到web容器

因此,当使用django内置的调试服务器时,同样需要指定静态文件url和文件系统之间的映射关系.

修改url,添加静态文件的url规则

urlpatterns = patterns('',
    # Examples:
    # url(r'^$', 'catyblog.views.home', name='home'),

    url(r'^blog/', include('blog.urls')),
    url(r'^admin/', include(admin.site.urls)),
)  + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

修改settings.py,添加MEDIA_URL, MEDIA_ROOT

MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media/')

如此以来,便可在css文件或者html文件中直接以这样的方式使用静态文件

background-image: url('/media/img/bg.jpg');

总结

static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) 只有在debug模式下才有作用.

它的功能只是实现了从url规则到文件系统的映射

原文链接: http://www.tuicool.com/articles/2EfmQz
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值