Невозможно загрузить панель навигации начальной загрузки в Django (возможно, очевидное решение) - PullRequest
0 голосов
/ 21 февраля 2019

Моя панель навигации на моей домашней странице не щелкает, не открывает и не запускает ссылки.Я понимаю, что мне нужно потянуть код JavaScript, чтобы сделать это.Вот картинка.Эти три строки не могут быть нажаты и открыты.enter image description here

Вот что должно произойти, если щелкнуть эти три строки.enter image description here

Я прошел через все вопросы в stackoverflow, но все еще не могу его загрузить.Я попытался загрузить загрузочный CDN, сохранить javascript и загрузить его через статические файлы, пробовал разные javascript-файлы, но навигационная панель не работает.Возможно, я загружаю неправильные файлы.CSS-файлы загружаются, поэтому некоторые статические файлы загружаются.

Вот HTML-файл.

{% load staticfiles %}


<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
    <meta name="description" content="">
    <meta name="author" content="">
    <link rel="icon" href="../../favicon.ico">

    <title>Album example for Bootstrap</title>
     <link  href="{% static 'css/album.min.css' %}" rel="stylesheet">

    <!-- Custom styles for this template -->
    <link  href="{% static 'css/album.css' %}" rel="stylesheet">

    <!-- jQuery (necessary for Bootstrap's JavaScript plugins)-->
<script href="{% static 'js/jquery.js' %}" ></script>  <!--jquery-->

<!-- <script href = "{% static 'js/collapse.js' %}"></script>

<script href = "{% static 'js/dropdown.js' %}"></script> -->

  </head>

  <body>

    <div class="collapse bg-inverse" id="navbarHeader">
      <div class="container">
        <div class="row">
          <div class="col-sm-8 py-4">
            <h4 class="text-white">
            <li><a href="{% url 'about' %}">About</a></li>
          </h4>
            <p class="text-muted">About us.</p>
          </div>
          <div class="col-sm-4 py-4">
            <h4 class="text-white">Contact</h4>
            <ul class="list-unstyled">
              <li><a href="{% url 'contact' %}" class="text-white">Contact us</a></li>
              <li><a href="#" class="text-white">Like on Facebook</a></li>
              <li><a href="#" class="text-white">Follow on Twitter</a></li>
            </ul>
          </div>
        </div>
      </div>
    </div>
    <div class="navbar navbar-inverse bg-inverse">
      <div class="container d-flex justify-content-between">
        <a href="#" class="navbar-brand">MedTrend</a>
        <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarHeader" aria-controls="navbarHeader" aria-expanded="false" aria-label="Toggle navigation">
          <span class="navbar-toggler-icon"></span>
        </button>
      </div>
    </div>

Вот мой файл настроек, связанный с этим.

STATIC_URL = '/static/'

STATICFILES_DIRS = (
    os.path.join(os.path.abspath(os.path.dirname(__file__)), "static",),
)

1 Ответ

0 голосов
/ 21 февраля 2019
  • Если вы используете Django 2.0 и ваши статические настройки работают , тогда вам нужно использовать {% load static %} вместо {% load staticfiles %}

  • Если вам нужна ссылка, вот рабочий пример для статических файлов:

project/settings.py

STATIC_URL = '/static/'

STATICFILES_DIRS = [
         os.path.join(BASE_DIR, 'static'),
]

Здесь у меня в корневом каталоге проекта есть папка «static», в которой находятся такие папки, как «css», «js» и т. Д. Вы также должны установить это в своем urls.pyпоэтому он может быть доступен для шаблона.Поэтому я бы сделал это следующим образом:

project/urls.py

from django.contrib import admin
from django.urls import path
from django.conf.urls.static import static        #---imports
from django.conf import settings                  #---imports

urlpatterns = [

    path('', user_login),
    path('admin/', admin.site.urls), 
] 

urlpatterns += staticfiles_urlpatterns()       # <------- Add this

Затем в верхней части HTML-страницы импортируйте статические файлы

{% load static from staticfiles %}          #<-----this

<link rel="stylesheet" href="{% static 'css/bootstrap.min.css'%}">
<link rel="stylesheet" href="{% static 'css/style.css'%}">

Обновление

Вы забыли добавить bootstrap.bundle.js в свою статическую / js , а затем в base_generic.html добавить ниже:

<script src="{% static 'js/b.b.js' %}"></script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...