Django не загружает файлы изображений со статическим
Я работаю с Django, и он не загружает никаких файлов изображений, но загружает мои CSS-файлы в ту же область каталога.
HTML-страница
<!DOCTYPE html>
<html lang="en">
{% load static %}
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href="{% static 'home.css' %}" type="text/css" rel="stylesheet">
<title>Hello World</title>
</head>
<body>``
<h1>Home</h1>
<img href="{% static 'icons/folder.png' %}" alt="folder">
{% for file in files %}
{% if file.1 == True %}
<p><a href="/files/home/{{file.2}}">{{file}}></a></p>
{% else %}
<p>{{file}}</p>
{% endif %}
{% endfor %}
</body>
</html>
settings.py
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
Это победа.
Файл CSS загружается, но изображение не отображается.
Дайте мне знать, если вам понадобится дополнительная информация, которую я забыл предоставить.
Вам необходимо использовать атрибут src
для тега img
вместо href
. Атрибут src
обязателен при использовании тега img. Ваш код должен выглядеть следующим образом:
<img src="{% static 'icons/folder.png' %}" alt="folder">
Однако, если вы хотите создать интерактивное изображение, вы можете поместить тег <img>
внутрь тега <a>
с атрибутом href
:
<a href="URL">
<img src="path/to/image.jpg" alt="Clickable Image">
</a>
Смотрите https://www.geeksforgeeks.org/how-to-turn-an-image-into-a-link-in-html/.
Не забудьте запустить:
python manage.py collectstatic