我在生成 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 时,从控制台文件生成正确。
最佳答案
您需要为生产正确配置STATIC_ROOT
和STATIC_URL
。根据 STATICFILES_DIRS
和您配置的 STATICFILES_FINDERS
,您的静态源将与应用程序的源一起定位,而 STATIC_ROOT
必须位于由于此数据本质上是 transient 的,因此您的来源路径。
这意味着您必须依赖在生产环境中运行 $ python manage.pycollectstatic
。匹配 STATIC_URL
的路径应由您的网络服务器处理,并将根配置为与提供文件的 STATIC_ROOT
匹配。
您可以查看django.contrib.staticfiles
应用指南和 deploying static files 上的指南在生产中从文档中获取更多细节。
关于django - Django wkhtmltopdf 中的静态文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18930259/