2014-07-07 20 views
1

我在我的Django應用程序中使用JavaScript(jQuery FileTree,請參閱:http://www.abeautifulsite.net/blog/2008/03/jquery-file-tree/)。問題是,這個JavaScript需要python腳本的路徑。我怎麼能意識到這一點? 我不能在JavaScript中使用Django模板標籤。在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); } 
     ); 

    }); 

Django會找不到腳本path/to/python/script.py,我怎麼能服這個文件?也許我還沒有完全理解Django中的靜態文件的概念?請注意,腳本不一定是python,我想知道如何在我的JavaScript中加載任意文件。

+0

我要麼通過'urls.py'路由文件,要麼發送一個ajax請求到你的後端的查詢函數,這個函數將會回答這個文件。 – Martol1ni

回答

0

您誤解了「script」參數。它不是腳本的文件路徑,它是一個URL:返回JSON以填充樹視圖的服務器端代碼的位置。您需要編寫一個視圖並將其與您的urlconf連接,然後在JS選項中使用該URL。

請注意,該軟件包顯然已包含Django的連接器。另外,您可能想要反映一下,對於文件瀏覽器,可能有更好的選擇,而不是未維護的六年包。

相關問題