Никак не подключаются js файл к Bootstrap карусели
Никак не могу подключить js файлы к PythonDjango странице.
Главное css файлы хорошо работают, а js вообще никак. Карусель попросту не двигается, а стрелки вообще говорят, что это ссылка на страницу и переходят на верх.
index.html
<!DOCTYPE html>
<html lang="en">
<head>
{% load static %}
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel = "stylesheet" href="{% static 'boar/css/index.css' %}">
<link rel = "stylesheet" href="{% static 'boar/css/style-stock-content.css' %}">
<link rel = "stylesheet" href="{% static 'boar/css/style-about-content.css' %}">
<link rel = "stylesheet" href="{% static 'boar/css/style-news-content.css' %}">
<title>{% block title %}Склад{% endblock %}</title>
<link rel="stylesheet" href="{% static 'boar/css/bootstrap/bootstrap.min.css' %}">
<script type="text/javascript" src="{% static 'boar/js/bootstrap.min.js' %}"></script>
<script type="text/javascript" src="{% static 'boar/js/jquery-3.5.1.min.js' %}"></script>
<script type="text/javascript" src="{% static 'boar/js/pooper.min.js' %}"></script>
<style>
.col-center {
margin: 0 auto;
float: none !important;
}
.carousel {
padding: 0 70px;
}
.carousel .carousel-item {
color: #999;
font-size: 14px;
height: 3123px;
width: 1260px;
text-align: center;
overflow: hidden;
min-height: 290px;
}
.carousel .carousel-item .img-box {
width: 135px;
height: 135px;
margin: 0 auto;
padding: 5px;
border: 1px solid #ddd;
border-radius: 50%;
}
.carousel .img-box img {
width: 100%;
height: 100%;
display: block;
border-radius: 50%;
}
.carousel .testimonial {
padding: 30px 0 10px;
}
.carousel .overview {
font-style: italic;
}
.carousel .overview b {
text-transform: uppercase;
color: #7AA641;
}
.carousel-control-prev, .carousel-control-next {
width: 40px;
height: 40px;
margin-top: -20px;
top: 50%;
background: none;
}
.carousel-control-prev i, .carousel-control-next i {
font-size: 68px;
line-height: 42px;
position: absolute;
display: inline-block;
color: rgba(0, 0, 0, 0.8);
text-shadow: 0 3px 3px #e6e6e6, 0 0 0 #000;
}
</style>
</head>
<body>
<!-- Шапка -->
<header>
<div class = "header-background"><img src = "{% static 'boar/image/header-background.png' %}"/></div>
<a href = "{% url 'home' %}"><div class = "menu-home">Главная</div></a>
<a href = "{% url 'stock' %}"><div class = "menu-stock">Склад</div></a>
<a href = "{% url 'about' %}"><div class = "menu-about">О нас</div></a>
<a href = "{% url 'news' %}"><div class = "menu-news">Новости</div></a>
<div class = "logo"><img src = "{% static 'boar/image/Logo.png' %}"/></div>
<div class = "insta"><img src = "{% static 'boar/image/Insta.png' %}"/></div>
<div class = "twit"><img src = "{% static 'boar/image/twit.png' %}"/></div>
<div class = "vk"><img src = "{% static 'boar/image/vk.png' %}"/></div>
<div class = "ikon-phone"><img src = "{% static 'boar/image/ikon-phone.png' %}"/></div>
<div class = "ikon-maps"><img src = "{% static 'boar/image/maps-ikon.png' %}"/></div>
<div class = "WhatTele">WhatsApp|Telegram</div>
<div class = "number">+8(000)000-00-00</div>
<div class = "address">Адрес</div>
<div class = "add">Россия, г.Москва, ул. Кирова, д 16</div>
</header>
{% block content %}
<div class="container-xl">
<div class="row">
<div class="col-lg-8 mx-auto">
<div id="myCarousel" class="carousel slide" data-ride="carousel">
<!-- Wrapper for carousel items -->
<div class="carousel-inner">
<div class="carousel-item active">
<div class = "slide_one">
<div class = "stock-product-1"><img src = "{% static 'boar/image/product1.png' %}"/></div>
<div class = "stock-product-1-text">Мясо кролика Мкк Балтийский в собственном соку 325 г</div>
<div class = "canva1"><img src = "{% static 'boar/image/canva.png' %}"/></div>
<div class = "price1">325 руб</div>
<div class = "stock-product-2"><img src = "{% static 'boar/image/product2.png' %}"/></div>
<div class = "stock-product-2-text">Говядина Главпродукт тушеная экстра 525 г</div>
<div class = "canva2"><img src = "{% static 'boar/image/canva.png' %}"/></div>
<div class = "price2">240 руб</div>
<div class = "stock-product-3"><img src = "{% static 'boar/image/product3.png' %}"/></div>
<div class = "stock-product-3-text">Цыпленок тушеный Батькин резерв филе в собственном соку 338 г</div>
<div class = "canva3"><img src = "{% static 'boar/image/canva.png' %}"/></div>
<div class = "price3">320 руб</div>
<div class = "stock-product-4"><img src = "{% static 'boar/image/product4.png' %}"/></div>
<div class = "stock-product-4-text">Свинина тушеная Семейный запас 525 г</div>
<div class = "canva4"><img src = "{% static 'boar/image/canva.png' %}"/></div>
<div class = "price4">200 руб</div>
<div class = "stock-product-5"><img src = "{% static 'boar/image/product5.png' %}"/></div>
<div class = "stock-product-5-text">Говядина тушеная Батькин резерв 338 г</div>
<div class = "canva5"><img src = "{% static 'boar/image/canva.png' %}"/></div>
<div class = "price5">425 руб</div>
<div class = "stock-product-6"><img src = "{% static 'boar/image/product6.png' %}"/></div>
<div class = "stock-product-6-text">Тушенка Aro кусковая свинина 340 г</div>
<div class = "canva6"><img src = "{% static 'boar/image/canva.png' %}"/></div>
<div class = "price6">525 руб</div>
<div class = "stock-product-7"><img src = "{% static 'boar/image/product7.png' %}"/></div>
<div class = "stock-product-7-text">Говядина тушеная БКК Золото Байкала тушеная ГОСТ в собственном соку 338 г</div>
<div class = "canva7"><img src = "{% static 'boar/image/canva.png' %}"/></div>
<div class = "price7">325 руб</div>
<div class = "stock-product-8"><img src = "{% static 'boar/image/product8.png' %}"/></div>
<div class = "stock-product-8-text">Свинина Мясной Союз тушеная кусковая 340 г</div>
<div class = "canva8"><img src = "{% static 'boar/image/canva.png' %}"/></div>
<div class = "price8">150 руб</div>
<div class = "stock-product-9"><img src = "{% static 'boar/image/product9.png' %}"/></div>
<div class = "stock-product-9-text">Свинина тушеная Таврия ГОСТ 338 г</div>
<div class = "canva9"><img src = "{% static 'boar/image/canva.png' %}"/></div>
<div class = "price9">325 руб</div>
</div>
</div>
<div class="carousel-item">
<div class = "slide_one">
<div class = "stock-product-1"><img src = "{% static 'boar/image/product1.png' %}"/></div>
<div class = "stock-product-1-text">Мясо кролика Мкк Балтийский в собственном соку 325 г</div>
<div class = "canva1"><img src = "{% static 'boar/image/canva.png' %}"/></div>
<div class = "price1">325 руб</div>
<div class = "stock-product-2"><img src = "{% static 'boar/image/product2.png' %}"/></div>
<div class = "stock-product-2-text">Говядина Главпродукт тушеная экстра 525 г</div>
<div class = "canva2"><img src = "{% static 'boar/image/canva.png' %}"/></div>
<div class = "price2">240 руб</div>
<div class = "stock-product-3"><img src = "{% static 'boar/image/product3.png' %}"/></div>
<div class = "stock-product-3-text">Цыпленок тушеный Батькин резерв филе в собственном соку 338 г</div>
<div class = "canva3"><img src = "{% static 'boar/image/canva.png' %}"/></div>
<div class = "price3">320 руб</div>
<div class = "stock-product-4"><img src = "{% static 'boar/image/product4.png' %}"/></div>
<div class = "stock-product-4-text">Свинина тушеная Семейный запас 525 г</div>
<div class = "canva4"><img src = "{% static 'boar/image/canva.png' %}"/></div>
<div class = "price4">200 руб</div>
<div class = "stock-product-5"><img src = "{% static 'boar/image/product5.png' %}"/></div>
<div class = "stock-product-5-text">Говядина тушеная Батькин резерв 338 г</div>
<div class = "canva5"><img src = "{% static 'boar/image/canva.png' %}"/></div>
<div class = "price5">425 руб</div>
<div class = "stock-product-6"><img src = "{% static 'boar/image/product6.png' %}"/></div>
<div class = "stock-product-6-text">Тушенка Aro кусковая свинина 340 г</div>
<div class = "canva6"><img src = "{% static 'boar/image/canva.png' %}"/></div>
<div class = "price6">525 руб</div>
<div class = "stock-product-7"><img src = "{% static 'boar/image/product7.png' %}"/></div>
<div class = "stock-product-7-text">Говядина тушеная БКК Золото Байкала тушеная ГОСТ в собственном соку 338 г</div>
<div class = "canva7"><img src = "{% static 'boar/image/canva.png' %}"/></div>
<div class = "price7">325 руб</div>
<div class = "stock-product-8"><img src = "{% static 'boar/image/product8.png' %}"/></div>
<div class = "stock-product-8-text">Свинина Мясной Союз тушеная кусковая 340 г</div>
<div class = "canva8"><img src = "{% static 'boar/image/canva.png' %}"/></div>
<div class = "price8">150 руб</div>
<div class = "stock-product-9"><img src = "{% static 'boar/image/product9.png' %}"/></div>
<div class = "stock-product-9-text">Свинина тушеная Таврия ГОСТ 338 г</div>
<div class = "canva9"><img src = "{% static 'boar/image/canva.png' %}"/></div>
<div class = "price9">325 руб</div>
</div>
</div>
<div class="carousel-item">
<div class = "slide_one">
<div class = "stock-product-1"><img src = "{% static 'boar/image/product1.png' %}"/></div>
<div class = "stock-product-1-text">Мясо кролика Мкк Балтийский в собственном соку 325 г</div>
<div class = "canva1"><img src = "{% static 'boar/image/canva.png' %}"/></div>
<div class = "price1">325 руб</div>
<div class = "stock-product-2"><img src = "{% static 'boar/image/product2.png' %}"/></div>
<div class = "stock-product-2-text">Говядина Главпродукт тушеная экстра 525 г</div>
<div class = "canva2"><img src = "{% static 'boar/image/canva.png' %}"/></div>
<div class = "price2">240 руб</div>
<div class = "stock-product-3"><img src = "{% static 'boar/image/product3.png' %}"/></div>
<div class = "stock-product-3-text">Цыпленок тушеный Батькин резерв филе в собственном соку 338 г</div>
<div class = "canva3"><img src = "{% static 'boar/image/canva.png' %}"/></div>
<div class = "price3">320 руб</div>
<div class = "stock-product-4"><img src = "{% static 'boar/image/product4.png' %}"/></div>
<div class = "stock-product-4-text">Свинина тушеная Семейный запас 525 г</div>
<div class = "canva4"><img src = "{% static 'boar/image/canva.png' %}"/></div>
<div class = "price4">200 руб</div>
<div class = "stock-product-5"><img src = "{% static 'boar/image/product5.png' %}"/></div>
<div class = "stock-product-5-text">Говядина тушеная Батькин резерв 338 г</div>
<div class = "canva5"><img src = "{% static 'boar/image/canva.png' %}"/></div>
<div class = "price5">425 руб</div>
<div class = "stock-product-6"><img src = "{% static 'boar/image/product6.png' %}"/></div>
<div class = "stock-product-6-text">Тушенка Aro кусковая свинина 340 г</div>
<div class = "canva6"><img src = "{% static 'boar/image/canva.png' %}"/></div>
<div class = "price6">525 руб</div>
<div class = "stock-product-7"><img src = "{% static 'boar/image/product7.png' %}"/></div>
<div class = "stock-product-7-text">Говядина тушеная БКК Золото Байкала тушеная ГОСТ в собственном соку 338 г</div>
<div class = "canva7"><img src = "{% static 'boar/image/canva.png' %}"/></div>
<div class = "price7">325 руб</div>
<div class = "stock-product-8"><img src = "{% static 'boar/image/product8.png' %}"/></div>
<div class = "stock-product-8-text">Свинина Мясной Союз тушеная кусковая 340 г</div>
<div class = "canva8"><img src = "{% static 'boar/image/canva.png' %}"/></div>
<div class = "price8">150 руб</div>
<div class = "stock-product-9"><img src = "{% static 'boar/image/product9.png' %}"/></div>
<div class = "stock-product-9-text">Свинина тушеная Таврия ГОСТ 338 г</div>
<div class = "canva9"><img src = "{% static 'boar/image/canva.png' %}"/></div>
<div class = "price9">325 руб</div>
</div>
</div>
</div>
<!-- Carousel controls -->
<div class="control-qa">
<a class="carousel-control-prev" id="button-left_question_answer" href="#myCarousel" data-slide="prev">
</a>
<a class="carousel-control-next" id="button-right_question_answer" href="#myCarousel" data-slide="next">
</a>
</div>
</div>
</div>
</div>
</div>
{% endblock content %}
<!-- Подвал -->
<footer>
<div class = "footer-background"><img src = "{% static 'boar/image/footer-background.png' %}"/></div>
<div class = "inst-footer"><img src = "{% static 'boar/image/insta-footer.png' %}"/></div>
<div class = "twit-footer"><img src = "{% static 'boar/image/twit-footer.png' %}"/></div>
<div class = "vk-footer"><img src = "{% static 'boar/image/vk-footer.png' %}"/></div>
<div class = "ikon-maps-footer"><img src = "{% static 'boar/image/maps-ikon-footer.png' %}"/></div>
<div class = "ikon-phone-footer"><img src = "{% static 'boar/image/ikon-phone-footer.png' %}"/></div>
<div class = "WhatTele-footer">WhatsApp|Telegram</div>
<div class = "number-footer">+8(000)000-00-00</div>
<div class = "address-footer">Адрес</div>
<div class = "add-footer">Россия, г.Москва, ул. Кирова, д 16</div>
</footer>
</body>
settings.py
"""
Django settings for ShopBoar project.
Generated by 'django-admin startproject' using Django 4.0.4.
For more information on this file, see
https://docs.djangoproject.com/en/4.0/topics/settings/
For the full list of settings and their values, see
https://docs.djangoproject.com/en/4.0/ref/settings/
"""
from pathlib import Path
import os
# Build paths inside the project like this: BASE_DIR / 'subdir'.
BASE_DIR = Path(__file__).resolve().parent.parent
# Quick-start development settings - unsuitable for production
# See https://docs.djangoproject.com/en/4.0/howto/deployment/checklist/
# SECURITY WARNING: keep the secret key used in production secret!
SECRET_KEY = 'django-insecure-0l_awyr8&ftgoddwmytwhg09iou2norfz(a_0zb^o*s3xh&^ei'
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True
ALLOWED_HOSTS = []
# Application definition
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
ROOT_URLCONF = 'ShopBoar.urls'
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR, 'boar/templates')],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
WSGI_APPLICATION = 'ShopBoar.wsgi.application'
# Database
# https://docs.djangoproject.com/en/4.0/ref/settings/#databases
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': BASE_DIR / 'db.sqlite3',
}
}
# Password validation
# https://docs.djangoproject.com/en/4.0/ref/settings/#auth-password-validators
AUTH_PASSWORD_VALIDATORS = [
{
'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
},
{
'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',
},
{
'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',
},
{
'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',
},
]
# Internationalization
# https://docs.djangoproject.com/en/4.0/topics/i18n/
LANGUAGE_CODE = 'en-us'
TIME_ZONE = 'UTC'
USE_I18N = True
USE_TZ = True
# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/4.0/howto/static-files/
STATIC_URL = 'static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, "boar/static"),
]
# Default primary key field type
# https://docs.djangoproject.com/en/4.0/ref/settings/#default-auto-field
DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField'
Источник: Stack Overflow на русском