Что не так с моим Django templating, не загружающим статические файлы?

Я совсем новичок в Django, поэтому буду благодарен за любую помощь!

Я пытаюсь решить эту проблему уже несколько часов, но надежды нет.

Я хочу использовать шаблон Django. У меня есть base.html и home.html, которые расширяют base.html. Base.html - это просто макет, с верхним и нижним колонтитулами. Home.html - это просто содержимое, которое я хочу отобразить, например, логотип.

Base.html:

{% load static %}

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" type="text/css" href="{% static 'restaurant/css/styles.css' %}">
    <title>{% block title %}Little Lemon{% endblock %}</title>
</head>
<body>
    <div class="navbar">
        <a href="/restaurant/"><img src="{% static 'restaurant/images/logo.png' %}" alt="Little Lemon" style="height:40px;"></a>
        <a href="/restaurant/menu">Menu</a>
        <a href="/restaurant/about">About</a>
        <a href="/restaurant/contact">Contact</a>
    </div>

    <div class="container">
        {% block content %}
        {% endblock %}
    </div>

    <div class="footer">
        <p>&copy; 2024 Little Lemon. All rights reserved.</p>
    </div>
</body>
</html>

Home.html:

{% extends 'restaurant/base.html' %}

{% block title %}Home{% endblock %}

{% block content %}
<h1>Welcome to Little Lemon!</h1>
<p>Enjoy the best food in town at our cozy restaurant. We offer a wide variety of dishes made from the freshest ingredients.</p>
<img src="{% static 'restaurant/images/logo.png' %}" alt="Little Lemon" style="width:100%;max-width:600px;">
<p>Visit us for a dining experience you'll never forget.</p>
{% endblock %}

Я попробовал упростить его и использовать только home.html. Стили и логотипы отображаются, поэтому я уверен, что django знает, где найти статические файлы. Но когда я разделяю HTML на части и расширяю их вместе, возникает ошибка, говорящая:

TemplateSyntaxError at /restaurant/
Invalid block tag on line 8: 'static', expected 'endblock'. Did you forget to register or load this tag?

Мне приходится добавлять тег {% load static %} в home.html, чтобы успешно загрузить статический файл. Но если я правильно помню, нужно добавить тег {% load static %} только один раз в родительском(?) шаблоне, и другие шаблоны смогут загрузить статику. Так что же здесь не так?

Вот репозиторий, если кто-то хочет протестировать его: https://github.com/jethro-dev/LittleLemon

Вернуться на верх