【问题标题】:Loading file with JavaScript inside a Django app在 Django 应用程序中使用 JavaScript 加载文件
【发布时间】:2014-07-07 08:47:09
【问题描述】:

我在我的 Django 应用程序中使用 JavaScript(jQuery FileTree,请参见此处:http://www.abeautifulsite.net/blog/2008/03/jquery-file-tree/)。问题是,这个 JavaScript 需要 python 脚本的路径。我怎么能意识到这一点? 我不能在 JavaScript 中使用 Django 模板标签。

在我的 html 模板中,我有:

    {% load staticfiles %}
    <script src={% static "treeview.js" %} type="text/javascript"></script>

这是 JavaScript treeview.js(已正确加载):

    $(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); }
        );

    });

Django 找不到脚本path/to/python/script.py,我该如何提供这个文件?可能我还没有完全理解Django中静态文件的概念?请注意,脚本不必是 python,我想知道如何在我的 JavaScript 中加载任意文件。

【问题讨论】:

  • 我要么通过urls.py 路由文件,要么向后端的查找函数发送一个ajax 请求,该函数将回答相关文件。

标签: javascript jquery django filetree


【解决方案1】:

您误解了“脚本”参数是什么。它不是脚本的文件路径,而是 URL:返回 JSON 以填充树视图的服务器端代码的位置。您需要编写一个视图并将其与您的 urlconf 连接,然后在 JS 选项中使用该 URL。

请注意,该软件包显然已经包含了 Django 的连接器。此外,您可能想反映,文件浏览器可能比未维护的六年前的软件包更好。

【讨论】:

    猜你喜欢
    • 2017-05-17
    • 2022-01-22
    • 2018-06-30
    • 1970-01-01
    • 2020-10-10
    • 2013-04-05
    • 1970-01-01
    • 2016-03-15
    • 1970-01-01
    相关资源
    最近更新 更多