В статическом файле в django не работает background_image
Я попробовал использовать код для изменения цвета фона, и он работал нормально. Но когда я использовал код background_image, код не сработал и выдал сообщение (Не удалось загрузить ресурс: сервер ответил статусом 404 (Not Found)). Хотя путь указан правильно Вот путь к изображению внутри приложения D:\Todos\Todosproject\static\images\svitlana-j7Ssk0Km8Jo-unsplash.jpg
static/styles
body {
background-image: url('/Todos/Todosproject/static/images/svitlana-j7Ssk0Km8Jo-unsplash.jpg');
}
base.html
<!DOCTYPE html>
{% load static %}
<html lang="en">
<head>
<meta charset="UTF-8">
<link rel="stylesheet" type="text/css" href="{% static 'css/styles.css' %}"/>
<title>
{% block title %}
{% endblock title %}
</title>
</head>
<body>
{% block body %}
{% endblock body %}
</body>
</html>
settings.py в django
STATIC_URL = 'static/'
STATICFILES_DIRS = [BASE_DIR / "static"]
CSS-файлы не обрабатываются шаблонизатором Django, поэтому вы не можете использовать переменную шаблона, например {% static %}
.
Вместо этого вы можете использовать относительный url (относительно вашего CSS файла).
Если ваш CSS хранится в каталоге /Todos/Todosproject/static/css/
, вам следует использовать url относительно этого каталога.
Пример
body {
background-image: url('../images/svitlana-j7Ssk0Km8Jo-unsplash.jpg');
}