5

我在生成 PDF 文件时遇到问题 - 如果路径如下所示,django 不提供 wkhtmltopdf 静态文件:

<link rel="stylesheet" type="text/css" href="{% static 'flot/fms.css' %}">

但如果我给出一条直接路径,它会起作用:

<link rel="stylesheet" type="text/css" href="http://localhost:8000/static/flot/fms.css">

静态文件的问题仅在于从 Web 生成 PDF 时,从控制台文件正确生成。

4

1 回答 1

2

您需要正确配置STATIC_ROOTSTATIC_URL用于生产。根据STATICFILES_DIRSSTATICFILES_FINDERS所配置的内容,您的静态源将与您的应用程序的源一起定位,而它们STATIC_ROOT必须位于源的路径之外,因为这些数据本质上是瞬态的。

这意味着您必须依赖于$ python manage.py collectstatic在生产环境中运行。路径匹配STATIC_URL应由您的 Web 服务器处理,根配置为匹配STATIC_ROOT文件的提供位置。

您可以从文档中查看django.contrib.staticfiles应用指南和在生产环境中部署静态文件的指南,了解更多细节。

于 2013-09-21T10:39:03.713 回答