Использование jQuery локально с Bootstrap для Django не отвечает

У меня есть это в моем base.html файле included

{% load bootstrap4 %}
{% bootstrap_css %}
{% bootstrap_javascript jquery='full' %}

И я использую navbar navbar-expand-lg navbar-light из Bootstrap для моего navbar. Это работает. Когда я использую маленький дисплей (например, смартфон), меню сжимается до выпадающего элемента с кнопкой для расширения.

Но часть {% bootstrap_javascript jquery='full' %} занимает слишком много времени для полной загрузки источника jquery из сети: Около 400 мс без кэша. Я хотел бы сократить это время ожидания настолько, насколько это возможно. Поэтому я скачал последнюю версию jquery 3.6.0 с официального сайта, сохранил ее локально в своих статических файлах следующим образом

static/main_app/scripts/jQuery.js

загрузил его локально с

<script type="text/javascript" src="{% static 'main_app/scripts/jQuery.js' %}"></script> в моем base.html. Это работает, и jQuery работает нормально. Но кнопки nav-bar Bootstrap не реагируют. Также нет сообщения об ошибке в консоли браузера.

Вот я и подумал: Может быть, версия jQuery неправильная? Поэтому я попытался снова внедрить рабочую версию на свой сайт

{% bootstrap_javascript jquery='full' %}

, нашел исходный код вышеуказанного файла в dev-tools моего браузера, скопировал & вставил исходный код в мой jQuery.js файл и снова загрузил сайт. Ничего не изменилось, и navbar по-прежнему не работает.

Есть ли что-то, что я упускаю?

*** ОБНОВЛЕНИЕ ***

Работает, когда я устанавливаю

    <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js" integrity="sha384-B4gt1jrGC7Jh4AgTPSdUtOBvfO8shuf57BaghqFfPlYxofvL8/KUEfYiJOMMV+rV" crossorigin="anonymous"></script>

но с

{% load bootstrap4 %}

Это означает, что я загружаю bootstrap два раза...

Я смог переписать BOOTSTRAP4 настройки пакета pip (вызов jquery) из CDN в локальный файл settings.py вот так


BOOTSTRAP4 = {
    "jquery_url": {
            "url": f"{STATIC_URL}main_app/scripts/jquery.js",
    },
}

Также здесь есть другие варианты перезаписи

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