基于Django静态资源部署404的解决方法
时间:2020-12-07 16:41:08|栏目:Python代码|点击: 次
一. 静态资源static文件放在app中
确认django.contrib.staticfiles包含在INSTALLED_APPS中。
在settings文件中定义STATIC_URL,例如:
STATIC_URL = '/static/'
在模板中,可以硬编码URL如/static/my_app/example.jpg,或者最好使用static模板标签通过配置的STATICFILES_STORAGE存储来构建给定相对路径的URL(当你要切换到用于提供静态文件的内容分发网络(CDN)时,这样做会更容易)。
{% load static %} <img src="{% static "my_app/example.jpg" %}" alt="My image"/>
在你的应用中,将静态文件存储在名为static的目录下。 例如
my_app/static/my_app/example.jpg。
二. 静态资源static放在任意目录中(使用此方法解决404错误)
你的项目可能还有一些静态文件不属于任何一个特定的应用。 除了在应用中使用static/目录,你还可以在settings文件中定义一个目录列表(STATICFILES_DIRS),Django会在其中查找静态文件。 像这样:
STATICFILES_DIRS = [ os.path.join(BASE_DIR, "static"), '/var/www/static/', ]