Django: Статический тег не загружается в расширенном html при ссылке на изображение, но работает для таблицы стилей CSS?

У меня есть файл layout.html следующего вида:

{% load static %}
<!DOCTYPE html>
<html lang="en">
    <head>
        <link href="{% static 'app/styles.css' %}" rel="stylesheet">
    </head>
    <body>
        {% block body %}
        {% endblock %}
    </body>
</html>

и файл extended.html в следующем виде:

{% extends "layout.html" %}

{% block body %}
    <div class="maincontainer">
        <h1>Extended</h1>
        <img src="{% static 'app/images/image.svg' %}" alt="image">
    </div>
{% endblock %}

Когда я загружаю файл exnteded.html, я получаю следующую ошибку:

django.template.exceptions.TemplateSyntaxError: Invalid block tag on line 13: 'static', expected 'empty' or 'endfor'. Did you forget to register or load this tag?

Я проверил несколько сценариев:

  1. Если я удалю <img src="{% static 'app/images/image.svg' %}" alt="image"> из файла extended.html, таблица стилей CSS загрузится идеально.
  2. Если я добавлю {% load static %} в файл extended.html, то и изображение, и таблица стилей CSS загрузятся.

Я просмотрел документацию Django и убедился, что файл settings.py действительно содержит django.contrib.staticfiles в INSTALLED_APPS и STATIC_URL = "static/".

Я что-то упустил?

Чтобы устранить TemplateSyntaxError при использовании {% static %} в дочернем шаблоне, который расширяет другой, убедитесь, что вы включили {% load static %} в каждый дочерний шаблон, где вы используете статический тег. Такая явная загрузка необходима, потому что теги шаблонов, загруженные в родительский шаблон, автоматически не доступны в дочерних шаблонах:

{% extends "layout.html" %}
{% load static %}  <!-- Ensure static is loaded in the child template -->

{% block body %}
    <div class="maincontainer">
        <h1>Extended</h1>
        <img src="{% static 'app/images/image.svg' %}" alt="image">
    </div>
{% endblock %}
Вернуться на верх