【问题标题】:Html how to inlcude script in my template?Html 如何在我的模板中包含脚本?
【发布时间】:2020-05-24 09:01:30
【问题描述】:

我有一个问题要问你。

我正在尝试创建一个文件 js,其中包含我在我的 html 页面中的所有图表。结构如下:

___base.html
___scripts.html
___conto_economico.html
___charts.html

在我的 base.html 中,我以下列方式包含了 scripts.html:

{% block javascript %}
{% include 'adminlte/lib/_scripts.html' %}
{% endblock %}

在我的 scripts.html 中,我包含了所有脚本,还有 charts.js 文件

{% load static %}

{% block scripts %}
<script src="{% static 'admin-lte/plugins/jquery/jquery.min.js' %}"></script>
<script src="{% static 'admin-lte/plugins/jquery-ui/jquery-ui.min.js' %}"></script>
<script src="{% static 'admin-lte/plugins/chart.js/Chart.min.js' %}"></script>
<script src="{% static 'charts/charts.js' %}"></script>

{% endblock %}

最后,在 conto_economico.html 中,我扩展了我的基础并以下列方式包含 scripts.html:

{% extends 'adminlte/base.html' %}
{% load static %}
{% block content %}
{% include 'adminlte/lib/_scripts.html' %}
.....
<canvas class=" w-100 " id="chart"  height="180" ></canvas>
......
{% endblock content %}

但我的“图表”没有上传到我的页面。哪里出错了?

编辑

我的设置stati文件如下:

STATIC_URL = '/static/'

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

在我的我有两个静态文件夹:

  1. my_project/static中的第一个
  2. v_env\Lib\site-packages\adminlte3\static 中的第二个是我的 base.html 文件和脚本文件的位置。

可能是这个问题吗?

【问题讨论】:

  • 你配置静态文件了吗?
  • STATIC_URL = '/static/' STATIC_ROOT= [ os.path.join(BASE_DIR, 'static'), ]
  • @Muhammad Faizan Fareed 我已经用更多细节编辑了我的答案
  • 把你所有的静态文件放到静态目录而不是这个

标签: javascript html django typescript django-templates


【解决方案1】:

您的 base.html 和 _scripts.html 在同一个文件夹中。就这样吧:

{% include '_scripts.html' %}

【讨论】:

  • 不,我的 scripts.html 文件包含所有的 scripts.js,它是一个容器
  • 有时 Django 的浏览器会出现一些问题。因此,删除更改包含的模板名称(尝试使用不带“_”和其他模板的相同名称。删除包含并将其放置在远离 {% block content %} 标记的 html 代码附近。另外,再次添加一个新的包含标签,看看它是否有效。
猜你喜欢
  • 2021-05-25
  • 2011-11-05
  • 1970-01-01
  • 2012-12-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-09-17
  • 1970-01-01
相关资源
最近更新 更多