Дублирование шаблонов Django

Создал проект с несколькими приложениями (auth, blog). В каждом приложении создал папку templates. Но base.html для этих приложений одинаковый. Не хочется дублировать html код несколько раз, если какой-то другой вариант?

Шаблоны можно наследовать из соседнего приложения, также как и из текущего. Следующая запись будет справедлива для шаблона в приложении blog и для шаблона в приложении auth, если base.html находится в папке blog:

{% extends "blog/base.html" %}

Но я помещаю шаблоны в общую директорию в корне проекта, мне кажется это более очевидным и удобным. Для этого нужно добавить путь к директории в settings.py:

TEMPLATES = [
    {
        ...
        "DIRS": [os.path.join(BASE_DIR, "templates")],
        ...
    },
]

Пример структуры директории templates:

templates
├── blog
│   ├── post_creation.html
│   ├── post_detail.html
│   ├── post_list.html
│   ├── post_multiple_creation.html
│   └── post_multiple_creation_success.html
├── auth
│   ├── logged_out.html
│   ├── login.html
│   ├── profile_edit.html
│   ├── profile.html
│   ├── registration.html
│   └── registration_success.html
├── 403.html
└── base.html
Вернуться на верх