我已经在heroku上部署了我的应用程序,并且使用whitenoise
提供静态文件。
一切都很完美,但当我转向debug=false
时,css停止渲染。这可能是什么问题?静态文件不是由django提供的,而是由whitenoise
提供的。无法弄清楚。
相关settings.py
STATIC_URL = '/static/'
STATIC_ROOT = 'staticfiles'
STATICFILES_STORAGE = 'whitenoise.django.GzipManifestStaticFilesStorage'
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, "media")
项目' urls.py
urlpatterns = [
url(r'^', include('watch.urls', namespace="watch")),
url(r'^admin/', include(admin.site.urls)),
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
模板的静态文件声明
{% load staticfiles %}
<link rel="stylesheet" type="text/css" href="{% static 'css/finale.css' %}" />
答案 0 :(得分:0)
您应该首先关注documentation on using WhiteNoise with Django。我看到的第一个区别是你的行:
STATIC_ROOT = 'staticfiles'
与文档不同:
STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')
如果遵循该教程不起作用,您应确保包含应用的所有相关部分(例如,我需要查看wsgi.py
以及您上面显示的文件)包括WHITENOISE_XXXXXX
中的所有settings.py
设置,以找出问题。