Загрузка файла с JavaScript внутри приложения Django

Я использую JavaScript (jQuery FileTree, см. Здесь: http://www.abeautifulsite.net/blog/2008/03/jquery-file-tree/) внутри моего приложения Django. Проблема в том, что этому JavaScript нужен путь к скрипту Python. Как я могу это понять? Я не могу использовать теги шаблонов Django внутри JavaScript.

В моем 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); }
        );

    });

Джанго не найдет сценарий path/to/python/script.pyкак я могу обслуживать этот файл? Может быть, я еще не полностью понял концепцию статических файлов в Django? Обратите внимание, что скрипт не обязательно должен быть python, я хочу знать, как загрузить произвольный файл внутри моего JavaScript.

1 ответ

Решение

Вы неправильно поняли, что такое параметр "script". Это не путь к файлу скрипта, это URL: расположение серверного кода, который возвращает JSON для заполнения дерева. Вам нужно написать представление и связать его с вашим urlconf, а затем использовать этот URL в опциях JS.

Обратите внимание, что этот пакет, по-видимому, уже включает в себя разъем для Django. Также вы можете подумать, что для файлового браузера, возможно, есть лучшие варианты, чем для необслуживаемого шестилетнего пакета.

Другие вопросы по тегам