我在app2的页面中使用App1中的文件中的脚本时遇到问题。 我的项目结构如下所示:
我想在home / static / scripts / scripts.py中使用以下文件 在project / templates / project / s3.html
中的html文件中我的scripts.py文件如下所示:
import boto3
def listS3():
s3 = boto3.resource('s3')
for bucket in s3.buckets.all():
print(bucket.name)
我的s3.html文件如下所示:
{% include "home/_header.html" %}
{% block content %}
{% load staticfiles %}
<div class="s3">
</div>
{% endblock content %}
坦率地说,我甚至不确定如何加载该脚本以及之后如何调用它,因为这是我在django中的第一个项目。 我使用:
{% load script.py %}
或类似的东西? 我以后如何在html文件中调用函数listS3? 喜欢这个?
{% listS3() %}
?感谢您的帮助。
答案 0 :(得分:2)
我认为您不了解Django的基本模型 - 视图 - 模板模式结构。
重新学习Django的基本设计并查看代码可能是一个好主意。
这是Django的官方教程 https://docs.djangoproject.com/en/1.11/intro/tutorial01/
无法直接从Django模板中调用Python脚本方法。在Django中,您需要以&#34; Context&#34;的形式传递要在模板中使用的变量,对象和方法。在&#34;查看&#34;。
这是Django关于该部分的官方教程。 https://docs.djangoproject.com/en/1.11/intro/tutorial03/#write-views-that-actually-do-something