2012年3月14日 星期三

[Django] 靜態文件 (static files) 管理與部屬

最近在開發 template 的時候出現一個問題,就是 html 檔案中的 image 無法顯示。原本以為是路徑設定上的問題,但經嘗試「相對路徑」與「絕對路徑」後仍無法解決問題,只好求助 google 大神囉!囧

經 google 大神開釋後,發現 django 有自己 管理靜態文件 (Managing static files) 的方法。經查閱後整理如下:

1. Django 下所有靜態文件 (ex: images, .css, .js 等 ) 皆存放於 static 資料夾下;使用者上傳的圖片、檔案‧‧‧等等皆存放於 media 資料夾。

2. 修改專案 (project) 下的 settings.py。

    STATIC_ROOT = '/static/'
    STATIC_URL = '/static/'
    STATICFILE_DIRS = { './static', }


3. 在 template 要插入 image 的 tag 寫入
    <img src={{ STATIC_URL }}example.png />

如此一來,django 中所有靜態文件 ( image, .css, .js, etc.) 可顯示。

沒有留言:

張貼留言