django1.3新加入了一個靜態資源管理的app,django.contrib.staticfiles。在以往的django版本中,靜態資源的管理一向都是個問題。部分app發布的時候會帶上靜態資源文件,在部署的時候你必須手動從各個app中將這些靜態資源文件復制到同一個static目錄。在引入staticfiles后,你只需要執行./manage.py collectstatic就可以很方便的將所用到app中的靜態資源復制到同一目錄。
staticfiles的引入,方便了django靜態文件的管理,不過感覺staticfiles的文檔寫的并不是太清楚,初次使用的時候還是讓我有些困惑。
下面簡單的介紹一下staticfiles的主要配置:
- ??? STATIC_ROOT:運行manage.py collectstatic后靜態文件將復制到的目錄。注意:不要把你項目的靜態文件放到這個目錄。這個目錄只有在運行collectstatic時才會用到。我最開始想當然的以為這個目錄和MEDIA_ROOT的作用是相同的,致使在開發環境下一直無法找到靜態文件。
- ??? STATIC_URL:設置的static file的起始url,這個只可以在template里面引用到。這個參數和MEDIA_URL的含義差不多。
- ??? STATICFILES_DIRS:除了各個app的static目錄以外還需要管理的靜態文件位置,比如項目公共的靜態文件差不多。和TEMPLATE_DIRS的含義差不多。
- ??? 各個APP下static/目錄下的靜態文件django的開發服務器會自動找到,這點和以前APP下的templates目錄差不多。
- ??? 在urls.py中加入靜態文件處理的代碼
- ?
from django.contrib.staticfiles.urls import staticfiles_urlpatterns # ... the rest of your URLconf goes here ... urlpatterns += staticfiles_urlpatterns()
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
