2011-08-14 29 views
0

我有一些模板中的靜態文件(圖像),而調試設置爲True時出現問題:圖像不顯示。 這裏是一些設置和模板的代碼:http://dpaste.com/594183/Django&靜態文件,而調試模式打開

使用這些設置,打印的html不包含靜態文件的正確路徑。在任何情況下,我都記得前一段時間,即使沒有顯示正確的路徑圖像,也許問題不是路徑。

謝謝,盧克

回答

0

你在哪裏把你的靜態文件? 在新的Django中,您應該將它們放在應用程序中,例如如果您有一個名爲'blog'的應用,請創建一個目錄blog/static並將您的文件放在那裏。 調試服務器(manage.py runserver)將在localhost/static /中爲它們提供服務。

0

首先想到你的粘貼的第一件事是有一個空間插入到你的路徑。在CSS的背景圖片的url中,上下文變量STATIC_URL和硬編碼路徑之間有一個空格。小心django中的空間,它的模板引擎可能會對它們造成嚴重的破壞,並且通常不會爲你清理它們。其中一種情況是{{ value|length }},如果在管道周圍插入空格,則該值無法正確解析爲其長度;這是有道理的,因爲空格分隔參數。要麼通過刪除CSS Url中的空間來補救此問題,要麼改用更靈活的{%static「filename.png」%}模板標記。

查看https://docs.djangoproject.com/en/dev/howto/static-files/瞭解更多解釋。

還值得注意的是,當您在調試模式之外運行系統時,將無法爲您管理靜態文件。在生產中,你負責自己管理你的靜態文件。