Гид по технологиям

Как установить и подключить Bootstrap 5 в Django

5 min read Django Обновлено 06 Apr 2026
Bootstrap 5 в Django: установка и настройка
Bootstrap 5 в Django: установка и настройка

Тёмный монитор с HTML-кодом и классами Bootstrap

С момента релиза в 2013 году Bootstrap заметно упростил создание адаптивных интерфейсов. Bootstrap — популярный фронтенд-фреймворк для быстрой верстки и компонентов.

Django совместим с Bootstrap: вы применяете преднастроенные CSS-стили и JS-плагины для оформления страниц. Это сокращает время на дизайн, но требует корректной настройки внутри проекта.

В этой инструкции показано, как установить и настроить Bootstrap 5 в приложении Django (пример — приложение gallery с навигационной панелью).

Требования и подготовка

  • Python и pipenv установлены.
  • Создан Django-проект и приложение gallery.
  • Понимание базовых шаблонов Django и структуры проекта.

Важно: выбор метода подключения Bootstrap определяет дальнейшие шаги. Варианты: локальный пакет (django-bootstrap5) или CDN. Здесь рассматривается локальный пакет.

Установка Bootstrap через django-bootstrap5

В корне виртуального окружения выполните:

pipenv install django-bootstrap5  # устанавливает обертку для Bootstrap 5

Проверьте Pipfile — dependency должна появиться в секции [packages].

Затем зарегистрируйте приложение в settings.py проекта:

INSTALLED_APPS = [
    'gallery',
    'bootstrap5',
    # другие приложения
]

Добавление “bootstrap5” в INSTALLED_APPS делает теги и фильтры django-bootstrap5 доступными во всём проекте.

Подключение Bootstrap в шаблоне

Рекомендуется использовать базовый шаблон base.html и включать в него общие подключения CSS/JS. Создайте папку templates в приложении gallery и внутри файлы base.html и navbar.html.

Пример простого base.html (с комментариями):

{% load bootstrap5 %}



  
  
  
  Галерея

  {% block styles %}
    {% bootstrap_css %}
  {% endblock %}


  {% include 'navbar.html' %}

  
{% block content %}{% endblock %}
{% block scripts %} {% bootstrap_javascript %} {% endblock %}

Пояснения:

  • {% load bootstrap5 %} загружает теги django-bootstrap5.
  • {% bootstrap_css %} вставляет ссылку на CSS внутри .
  • {% bootstrap_javascript %} подключает дополнительные JS-теги (если необходимо).
  • Блоки styles/scripts позволяют при необходимости дополнять набор зависимостей в дочерних шаблонах.

Пример navbar.html

Добавьте навигацию и примените классы Bootstrap:

Обратите внимание: для Bootstrap 5 атрибуты data-* и классы немного отличаются от Bootstrap 4 (например, data-bs-toggle и ms-auto вместо ml-auto).

Стилизация навигационной панели в браузере

Тестирование конфигурации

  1. Запустите сервер: python manage.py runserver
  2. Откройте страницу с вашим шаблоном в браузере.
  3. Уменьшайте/увеличивайте ширину окна — проверьте адаптивность navbar.
  4. Проверьте, что кнопка-тогглер разворачивает меню на малых экранах.

Если стили не применяются — откройте DevTools и убедитесь, что CSS-файл Bootstrap загружен и не блокируется CSP.

Почему стоит использовать Bootstrap с Django

  • Быстрая вёрстка: готовые компоненты, сетка и утилиты ускоряют создание UI.
  • Адаптивность: преднастройки для мобильных устройств.
  • Совместимость: множество готовых шаблонов и расширений.

Bootstrap удобен, когда нужна быстрая и предсказуемая вёрстка. Для более тонкой кастомизации можно переопределять переменные SCSS или писать свой CSS.

Альтернативные подходы

  • CDN-подключение: проще, но зависит от внешнего сервиса.
  • Tailwind CSS: утилитарный подход с меньшим объёмом кода в сборке, но крутая кривая обучения.
  • Кастомный CSS: максимум контроля, больше работы.
  • django-crispy-forms или django-widget-tweaks для удобной интеграции форм.

Когда подключение Bootstrap нежелательно

  • Нужен минимальный размер страницы и критичный TTFB — сторонние CSS могут увеличить нагрузку.
  • Дизайн находится под жёсткими брендинговыми требованиями: лучше писать кастомные компоненты.
  • Если проект уже основан на другом фреймворке (Tailwind, Material UI).

Важно: Bootstrap — инструмент, а не цель. Выберите его, если он решает задачу эффективнее альтернатив.

Быстрая методология внедрения (шаги)

  1. Оцените требования к интерфейсу.
  2. Выберите способ подключения: пакет или CDN.
  3. Установите django-bootstrap5 и зарегистрируйте в INSTALLED_APPS.
  4. Создайте base.html с {% bootstrap_css %} и {% bootstrap_javascript %}.
  5. Настройте компоненты (navbar, карточки, формы).
  6. Тестируйте на устройствах и правьте стили.

Рольовые чек-листы

  • Разработчик:

    • Установил django-bootstrap5.
    • Добавил «bootstrap5» в INSTALLED_APPS.
    • Подключил теги в base.html.
    • Проверил реактивность и поведения JS.
  • Дизайнер:

    • Утвердил вариации цветов и размеров.
    • Подготовил графику и иконки.
  • Ревьювер:

    • Убедился в отсутствии конфликтов классов.
    • Проверил доступность (a11y) навигации и форм.

Критерии приёмки

  • Bootstrap CSS и JS успешно загружаются (проверка по Network).
  • Navbar корректно сворачивается и разворачивается на мобильных размерах.
  • Формы и кнопки выглядят ожидаемо и работают.
  • Нет конфликтов с глобальными стилями проекта.

Краткий глоссарий

  • Bootstrap: библиотека CSS/JS для UI-компонентов.
  • django-bootstrap5: интеграционный пакет, который упрощает подключение Bootstrap в Django.
  • base.html: базовый шаблон, от которого наследуются другие страницы.

Тестовые сценарии

  • Открыть страницу на ширине 375px и убедиться, что меню скрыто за тогглером.
  • Нажать тогглер — меню появляется.
  • Проверить кнопки и формы — отправка формы должна срабатывать без ошибок JS.

Подводные камни и советы

  • В Bootstrap 5 изменены префиксы data-атрибутов (data-bs-*). Если вы копируете код из примеров для Bootstrap 4 — скорректируйте их.
  • Проверьте, что ваши кастомные стили не используют классы Bootstrap со схожими именами.
  • При использовании CDN учитывайте политику CSP и оффлайн-доступ.

Вывод

Bootstrap 5 легко интегрируется в Django через django-bootstrap5 и значительно ускоряет создание адаптивного интерфейса. Подключите пакет, добавьте теги в base.html и применяйте готовые компоненты. Если нужен тонкий контроль над дизайном или минимальный размер бандла — рассмотрите альтернативы.

Сводка:

  • Установите django-bootstrap5 и зарегистрируйте в INSTALLED_APPS.
  • Подключите {% bootstrap_css %} и {% bootstrap_javascript %} в base.html.
  • Используйте готовые классы Bootstrap для быстрой верстки.
Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Как массово закрыть приложения на Mac
macOS

Как массово закрыть приложения на Mac

Xbox One не подключается к Wi‑Fi — как исправить
Техническая поддержка

Xbox One не подключается к Wi‑Fi — как исправить

Как скачать старые версии Internet Explorer
Программное обеспечение

Как скачать старые версии Internet Explorer

PayPal для побочного заработка — приёмы и чеклисты
Финансы

PayPal для побочного заработка — приёмы и чеклисты

Конвертация M4A в MP3 на iPhone без компьютера
Mobile/How-to

Конвертация M4A в MP3 на iPhone без компьютера

CompactGUI: сжатие игр и приложений в Windows 10
Windows

CompactGUI: сжатие игр и приложений в Windows 10