我无法在模板中使用django加载静态文件,我的文件如下所示
STATIC_DIR = os.path.join(BASE_DIR, 'static')
STATIC_URL = '/static/'
STATICFILES_DIR = [
STATIC_DIR,
]
]
<!DOCTYPE html>
{% load static %}
<html lang="en">
<head>
<meta charset="UTF-8">
<title>First App</title>
</head>
<body>
<h1>Hello this is index.html!</h1>
<img src="{% static 'images/mark.jpg' %}" alt="My image">
</body>
</html>
{{1}}
项目目录
答案 0 :(得分:1)
还将这些代码添加到您的主网址文件中
if settings.DEBUG:
urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
并在设置中也添加此行
STATIC_ROOT = os.path.join(os.path.dirname(BASE_DIR), "static")
MEDIA_ROOT = os.path.join(os.path.dirname(BASE_DIR), "media")
答案 1 :(得分:1)
STATICFILES_DIR
列表应命名为 STATICFILES_DIRS 。
In development与runserver
和DEBUG=True
一起运行就足够了。
要投放静态文件in production:
使用外部Web服务器(在生产环境中,您很可能在Django前面安装一个或Web代理服务器)。致电collectstatic
并通过网络服务器提供结果static_root目录
或者您可以将它们上传到CDN(AWS S3,CLoudflare)
或者可以使用Whitenoise
最不推荐,但仍然可行-通过添加静态网址在开发过程中与django一起使用