2013-05-02 146 views
0

我是Django的新手,我正在努力學習如何在本地部署中提供靜態文件。我已閱讀this和其他許多可能的相關問題,但我似乎無法找到解決我的問題。用Django提供靜態文件

這是我的設置,我無法弄清楚什麼是Django的心不是服務於我的靜態文件

STATIC_ROOT = '' 
STATIC_URL = '/html/' 
STATICFILES_DIRS=('C:/Users/RayLim/Desktop/project/home/username/djcode/mysite/mysite/templates/html',) 

在我的模板,我之所以稱它們爲

<link rel="stylesheet" href="css/style.css" type="text/css" media="all" /> 

我的HTML的結構該文件位於C:/Users/RayLim/Desktop/project/home/username/djcode/mysite/mysite/templates

html 
/css 
    /images 
    /style.css 
/js 
    /jquery.jcarousel.pack 
    /jquery-1.4.1.min 
    /jquery-func 

這是服務器響應

"GET /home/css/images/big1.jpg HTTP 1.1" 404 3782 

回答

0

首先,靜態文件和模板通常是在不同的目錄,但我不認爲會有任何問題(我所知道的...)

接下來,你要以確保您使用模板標記來表示靜態文件位置,而不是使用css/..,該預計相對於您當前正在查看的任何網址,都會有一個css目錄。

a couple template tags您可以使用,我用{{ STATIC_URL }}

所以

<link rel="stylesheet" href="css/style.css" type="text/css" media="all" /> 

<link rel="stylesheet" href="{{ STATIC_URL }}css/style.css" type="text/css" media="all" /> 

代替,你應該是所有設置......

+0

@Ngentor謝謝! – user2284926 2013-05-02 03:29:00

+0

沒問題,祝你好運 – Ngenator 2013-05-02 03:32:43

0

您應該避免硬鏈接到靜態目錄。隨着項目變大,它可能會引起混淆和潛在問題

請參閱此,它具有您需要的一切。

Django staticfiles app help

+0

@stupidboo正確,我嘗試閱讀鏈接,但我沒有完全得到如何做到這一點,我通過跟隨學習更好示例。你有什麼樣的例子嗎? – user2284926 2013-05-02 03:41:59