我应该把部分js和css文件放在flask项目中

时间:2016-07-07 09:14:53

标签: javascript python html flask jinja2

我有一个烧瓶项目并使用jinja2模板引擎,在模板部分:我像这样制作一个base.html:

    {%- block styles %}
        {% include 'static_partial/style.html' %}
    {%- endblock styles %}

<body{% block body_attribs %}{% endblock body_attribs %}>
{% block body -%}
    <div class="container">
    {% block navbar %}
        {% include 'navbar.html' %}
    {%- endblock navbar %}

    {% block scripts %}
        {% include 'static_partial/script.html' %}
    {%- endblock scripts %}
    </div>
{%- endblock body %}
</body>
{%- endblock html %}
</html>

我导入部分目录中的js和css文件,以及navbar.html。

在navbar.html中,我本身有一些css和js定义,我应该在哪里放置narbar.html css和js定义?如果我把它放在navbar.html中,它会导致错误,因为js需要首先从base.html加载一些js文件,这让我困惑了很长时间....

项目结构如下:

├── station
│   ├── static
│   ├── templates
│   ├── py

我的scripts.html是这样的:

<!-- jQuery2 -->
        <script src="//cdn.bootcss.com/jquery/2.2.4/jquery.min.js"></script>
        <!-- BootStrap Plugins -->
        <script src="//cdn.bootcss.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
        <!-- Global JS -->
        <script src="{{ url_for('static', filename='assets/js/global.js')}}"></script>

然后我将此文件包含在我的base.html

1 个答案:

答案 0 :(得分:0)

除非我遗漏了某些内容,否则您可以在assets/js navbar.js下为导航栏的JavaScript添加另一个js文件。

将其添加为scripts.html中的另一个脚本标记:

<script src="{{ url_for('static', filename='assets/js/navbar.js')}}"></script>