Загрузка файла с 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. Также вы можете подумать, что для файлового браузера, возможно, есть лучшие варианты, чем для необслуживаемого шестилетнего пакета.