@Insssane

Не работает наследование html шаблонов в flask, как исправить?

При наследовании родительский шаблон "base.html" не видит дочерних "navbar.html", "cardslider.html".

"base.html"
<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">

  <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-+0n0xVW2eSR5OomGNYDnhzAbDsOXxcvSN1TPprVMTNDbiYZCxYbOOl7+AMvyTG2x" crossorigin="anonymous">

  <link rel="stylesheet" href="{{ url_for('static', filename='css/index.css') }}">
  <link rel="stylesheet" href="{{ url_for('static', filename='css/cardslider.css') }}">

  <title>Title</title>
</head>
<body>

{% block navbar %}{% endblock %}

{% block cardslider %}{% endblock %}


<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.1/dist/js/bootstrap.bundle.min.js" integrity="sha384-gtEjrD/SeCtmISkJkNUaaKMoLD0//ElJ19smozuHV6z3Iehds+3Ulb9Bn9Plx0x4" crossorigin="anonymous"></script>


</body>
</html>


"navbar.html"
{% extends "base.html" %}
{% block navbar %}
<nav class="navbar navbar-expand-lg navbar-dark bg-dark">
    <div class="container-fluid">
        <a class="navbar-brand" href="#">Navbar</a>
        <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNavDropdown" aria-controls="navbarNavDropdown" aria-expanded="false" aria-label="Toggle navigation">
            <span class="navbar-toggler-icon"></span>
        </button>
        <div class="collapse navbar-collapse" id="navbarNavDropdown">
            <ul class="navbar-nav">
                <li class="nav-item">
                    <a class="nav-link active" aria-current="page" href="#">Home</a>
                </li>
                <li class="nav-item">
                    <a class="nav-link" href="#">Features</a>
                </li>
                <li class="nav-item">
                    <a class="nav-link" href="#">Pricing</a>
                </li>
                <li class="nav-item dropdown">
                    <a class="nav-link dropdown-toggle" href="#" id="navbarDropdownMenuLink" role="button" data-bs-toggle="dropdown" aria-expanded="false">
                        Dropdown link
                    </a>
                    <ul class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
                        <li><a class="dropdown-item" href="#">Action</a></li>
                        <li><a class="dropdown-item" href="#">Another action</a></li>
                        <li><a class="dropdown-item" href="#">Something else here</a></li>
                    </ul>
                </li>
            </ul>
        </div>
    </div>
    <ul class="navbar-nav justify-content-end">
        <li class="nav-item">
            <a class="nav-link" href="#">Зарегистрироваться</a>
        </li>
        <li class="nav-item">
            <a class="nav-link" href="#">Войти</a>
        </li>
    </ul>
</nav>
{% endblock %}


"cardslider"
{% extends "base.html" %}

{% block cardslider %}
<div class="slider middle">
    <div class="slides">
        <input type="radio" name="r" id="r1" checked>
        <input type="radio" name="r" id="r2">
        <input type="radio" name="r" id="r3">
        <input type="radio" name="r" id="r4">
        <input type="radio" name="r" id="r5">

        <div class="slide s1"><img src="" alt=""></div>
        <div class="slide"><img src="" alt=""></div>
        <div class="slide"><img src="" alt=""></div>
        <div class="slide"><img src="" alt=""></div>
        <div class="slide"><img src="" alt=""></div>
    </div>

    <div class="navigation">
        <label for="r1" class="bar"></label>
        <label for="r2" class="bar"></label>
        <label for="r3" class="bar"></label>
        <label for="r4" class="bar"></label>
        <label for="r5" class="bar"></label>
    </div>

</div>
{% endblock %}
  • Вопрос задан
  • 200 просмотров
Решения вопроса 1
yupiter7575
@yupiter7575
Python программист
Если вы хотите разные блоки разместить в разных файла, то вам не наследование нужно.
Используйте функцию include
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
Rocket Смоленск
от 80 000 до 130 000 ₽
Wanted. Санкт-Петербург
До 180 000 ₽
move2usajobs LLC Лос-Анджелес
от 2 000 до 4 000 $
14 нояб. 2024, в 08:55
40000 руб./за проект
14 нояб. 2024, в 05:39
10000 руб./за проект