在django(jinja)中工作时,静态JavaScript来自我的模板不起作用

时间:2020-09-04 17:35:34

标签: javascript django postgresql bootstrap-4 jinja2

base.html文件 这是使用jinja和所有js链接的地方,我创建了导航和页脚的部分文件,问题出在导航部分

{% load static %}
{% 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="" />
        <title>Home</title>
        <!-- Favicon-->
        <link rel="icon" type="image/x-icon" href="{% static 'assets/img/favicon.ico'%}" />
        <!-- Font Awesome icons (free version)-->
        <script src="https://use.fontawesome.com/releases/v5.13.0/js/all.js" crossorigin="anonymous"></script>
        <!-- Google fonts-->
        <link href="{% static 'https://fonts.googleapis.com/css?family=Merriweather+Sans:400,700'%}" rel="stylesheet" />
        <link href="{% static 'https://fonts.googleapis.com/css?family=Merriweather:400,300,300italic,400italic,700,700italic'%}" rel="stylesheet" type="text/css" />
        <!-- Third party plugin CSS-->
        <link href="{% static 'https://cdnjs.cloudflare.com/ajax/libs/magnific-popup.js/1.1.0/magnific-popup.min.css'%}" rel="stylesheet" />
        <!-- Core theme CSS (includes Bootstrap)-->
        <link href="{% static 'css/styles.css'%}" rel="stylesheet" />
    </head>
    <body id="page-top">
        <!-- Navigation-->
        {% include 'partials/_navigation.html' %}
        <!-- Navigation-->
        <!--content-->
        {% block content %}

        {% endblock  %}
        <!--content-->
        <!-- Footer-->
        {% include 'partials/_footer.html' %}
        <!-- Footer-->
        <!-- Bootstrap core JS-->
        <script src="{% static 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js'%}"></script>
        <script src="{% static 'https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.bundle.min.js'%}"></script>
        <!-- Third party plugin JS-->
        <script src="{% static 'https://cdnjs.cloudflare.com/ajax/libs/jquery-easing/1.4.1/jquery.easing.min.js'%}"></script>
        <script src="{% static 'https://cdnjs.cloudflare.com/ajax/libs/magnific-popup.js/1.1.0/jquery.magnific-popup.min.js'%}"></script>
        <!-- Core theme JS-->
        <script src="{% static 'js/scripts.js'%}"></script>
    </body>
</html>

设置: 这是设置部分,提供了静态路径

STATIC_URL ='/ static /'

#Manually Done
STATICFILES_LOCATION = 'static'
STATIC_URL='/static/'
STATIC_ROOT= os.path.join(BASE_DIR, 'static')
STATICFILES_DIRS = [
    os.path.join(BASE_DIR, 'MyProject/static')
]

1 个答案:

答案 0 :(得分:0)

当您拥有js文件的网址时,您就不需要Jinja。

代替:

<script src="{% static 'https://cdnjs.cloudflare.com/ajax/libs/magnific-popup.js/1.1.0/jquery.magnific-popup.min.js'%}"></script>
    

使用:

<script src="https://cdnjs.cloudflare.com/ajax/libs/magnific-popup.js/1.1.0/jquery.magnific-popup.min.js"></script>

等...