2011-10-08 78 views
0

我試圖在我的Django應用程序中使用Dajax,但當我嘗試將它包含在我的html模板中時,出現404錯誤。我已經在Windows 7上安裝了Dajax和Dajaxice這裏是我的STATIC_URL樣子:如何告訴我的django模板靜態文件(dajax.core.js)在哪裏?

STATIC_URL = '/static/' 

我的靜態文件夾放在我的應用程序的文件夾,所以從src文件夾在我的Eclipse項目,靜態文件夾的路徑是:

appname/static 

我放在下面的JavaScript文件合併爲「JS」目錄我的靜態目錄中:

dajaxice.core.js 
jquery.dajax.core.js 

在head標籤在我的模板是我的腳本標籤,看起來像這樣:

<script src="{{ STATIC_URL }}js/jquery.dajax.core.js" type="text/javascript" charset="UTF-8"></script> 

然而,當我打開我的模板,我得到以下錯誤:

GET http://localhost:8000/dajax/js/jquery.dajax.core.js 404 (NOT FOUND) 

爲什麼沒有被發現jquery.dajax.core.js?謝謝你的幫助!

編輯此外,這是我的看法是什麼樣子:

from django.shortcuts import render_to_response 
from django.template import RequestContext 

def dajax(request): 
    return render_to_response('dajax.html', context_instance=RequestContext(request)) 

這很簡單,因爲我只是測試的東西出來。

+0

你是否在你的urls.py中處理'/ static /'? – dm03514

回答

0

我會假設這是因爲你需要添加Django的靜態服務器(僅用於本地運行)

添加到您的urls.py:

if settings.DEBUG: 
    urlpatterns += patterns('', 
     (r'^static/(.*)$', 'django.views.static.serve', {'document_root': settings.STATIC_PATH}), 
    ) 

,或者您需要點MEDIA_ROOT在您的靜態文件夾的絕對路徑。

否則,我猜你在你的設置,聲明你STATIC_URL兩次,因爲你說你將它設置爲/static/,但隨後模板似乎與dajax

GET http://localhost:8000/dajax/js/jquery.dajax.core.js 404 (NOT FOUND)

來代替它應該是http://localhost:8000/static/js/jquery.dajax.core.js

+0

我檢查了我的settings.py文件,我只設置了一次STATIC_URL。我還將這段代碼添加到我的urls.py代碼中,並且仍然出現相同的錯誤。如果我只是上傳了我的應用程序供您瀏覽,會有幫助嗎?我只通過django runserver在本地運行,所以很容易轉移到另一個環境。 –

+0

我是一個小菜鳥。我沒有在settings.py中的INSTALLED_APPS元組中包含我的應用程序。添加,解決了我的問題。而且,靜態文件在不添加靜態模式的情況下工作。 –

相關問題