Невозможно загрузить локальные изображения с помощью HTML
Я разрабатываю простой сайт на Django, и хотел загрузить некоторые изображения локально на некоторые страницы. Но они не загружаются по какой-то причине. Я знаю, что есть похожие вопросы, и, насколько я понимаю,
a-) Это может быть проблема с каталогом, html файл и img файл находятся в одном каталоге. Все равно не работает; директория, и html файл. Я попробовал переместить img.jpg в каталог templates/images и попробовать <img src="images/img.jpg" height="400" width="374">
внутри html-файла, но это тоже не сработало.
b-) Это может быть опечаткой, но судя по изображениям наверху, этого тоже не должно быть.
c-) Файлы могут быть повреждены, я могу открыть изображение с помощью браузеров и пробовал использовать разные изображения тоже.
d-) Img можно было бы ограничить, но это не тот случай either. Я думаю.
Пытаюсь исправить это уже два дня, думал, что по какой-то причине использование extend или block может вызвать некоторые проблемы и попробовал без них, все равно ничего хорошего. и как я уже сказал, это проблема только с локальными файлами. Можно использовать файлы с прямой ссылкой.
Заранее спасибо, извините за возможные проблемы с форматом.
settings.py
# add this to your settings.py
import os
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static/')
Затем создайте папку с именем static
внутри папки вашего приложения. Затем создайте еще одну папку с тем же именем, что и ваше приложение, внутри папки static
.
Результирующая структура должна быть: your_project_name/your_app_name/static/your_app_name/
Вы также можете создать папку с именем images
внутри этой последней папки.
Результирующая структура должна быть: your_project_name/your_app_name/static/your_app_name/images/
Поместите ваше изображение (назовем его my_image.jpg
) в папку images
.
Теперь в своем шаблоне вы можете использовать тег static
:
{% load static %}
...
<img src="{% static 'your_app_name/images/my_image.jpg' %}" alt="">
Больше информации здесь: https://docs.djangoproject.com/en/4.0/howto/static-files/
django serve html with views:
class MyTemplateView(TemplateView):
template_name = 'my.html'
для шаблона в Django существуют настройки шаблона. https://docs.djangoproject.com/en/4.0/ref/settings/#std-setting-TEMPLATES. шаблоны должны находиться в специальной папке.
Изображения, которые Django берет из медиа или статических настроек. https://docs.djangoproject.com/en/4.0/ref/settings/#media-root. изображения должны находиться в специальной папке.
Попробуйте настроить ваш проект соответствующим образом для Django-Project.