在Django应用程序中加载带有JavaScript的文件
我在Django应用程序中使用JavaScript(jQuery文件树,请参见此处:)。问题是,此JavaScript需要python脚本的路径。我怎样才能意识到这一点? 我不能在JavaScript中使用Django模板标记 在我的html模板中,我有:在Django应用程序中加载带有JavaScript的文件,javascript,jquery,django,filetree,Javascript,Jquery,Django,Filetree,我在Django应用程序中使用JavaScript(jQuery文件树,请参见此处:)。问题是,此JavaScript需要python脚本的路径。我怎样才能意识到这一点? 我不能在JavaScript中使用Django模板标记 在我的html模板中,我有: {% load staticfiles %} <script src={% static "treeview.js" %} type="text/javascript"></script> Djang
{% load staticfiles %}
<script src={% static "treeview.js" %} type="text/javascript"></script>
Django找不到脚本
路径/to/python/script.py
,我如何提供此文件?也许我还没有完全理解Django中静态文件的概念?请注意,脚本不必是python,我想知道如何在JavaScript中加载任意文件。您误解了“script”参数是什么。它不是脚本的文件路径,而是URL:返回JSON以填充树视图的服务器端代码的位置。您需要编写一个视图并将其与urlconf连接,然后在JS选项中使用该URL
注意,这个包显然已经包含了一个用于Django的连接器。此外,您可能还想了解,对于文件浏览器,可能有比未维护的六年版软件包更好的选项。我会通过
url.py
路由文件,或者向后端的查找函数发送ajax请求,该函数将对有问题的文件进行响应。
$(document).ready(function() {
$('#file_selector').fileTree({
root: '/',
// how to load this file?
script: 'path/to/python/script.py',
folderEvent: 'click', expandSpeed: 750, collapseSpeed: 750,
expandEasing: 'easeOutBounce',
collapseEasing: 'easeOutBounce', loadMessage: 'Laden...',
multiFolder: false},
function(file) { alert(file); }
);
});