Django为了方便开发调试,调试模式下runserver会利用django.contrib.staticfiles应用自动部署资源服务,但是生产模式下(或debug=True时),如果还想要Django提供资源服务,就必须明确提供资源相关的配置,使其承担资源服务。
以下是两种使用Django提供资源服务的配置方式,推荐使用第一种,发布生产环境后,可以使用nginx提供静态资源服务,Django只做动态内容服务。
第一种形式:
1项目设置中配置(settings.py)
<代码> STATIC_ROOT=os.path。加入(BASE_DIR“静态”)代码>
2,在全局url中配置(urls . py)
<代码> re_path (r ' ^静态/(?术;path>。*)美元的,静态的。服务,{document_root: settings.STATIC_ROOT}) 代码>
3,执行资源搜集命令
<代码> python管理。py collectstatic 代码>
4模板中使用
<代码> & lt;链接rel="样式表" type=" text/css " href=" https://www.yisu.com/zixun/{%静态'mysite/风格。css ' %} "/祝辞代码>
5项目结构图
第二种形式:
1,在应用url中配置(urls . py)
<代码> re_path (r ' ^静态/(?术;path>。*)美元的,静态的。服务,{”document_root“:”。/静态/眪,name=熬蔡?代码>
2,模板中使用
<代码> & lt;链接rel="样式表" type=" text/css " href=" https://www.yisu.com/zixun/{% url 'mysite:静态“mysite/风格。css ' %} "/祝辞代码>
3项目结构图
参考:https://docs.djangoproject.com/zh-hans/2.0/ref/contrib/staticfiles/