国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

django模板加載靜態文件的方法步驟

2020-01-04 13:33:36
字體:
來源:轉載
供稿:網友

加載靜態文件

在一個網頁中,不僅僅只有一個 html 骨架,還需要 css 樣式文件, js 執行文件以及一些圖片等。因此在 DTL 中加載靜態文件是一個必須要解決的問題。在 DTL 中,使用 static 標簽來加載靜態文件。要使用 static 標簽,首先需要 {% load static %} 。加載靜態文件的步驟如下:

首先確保 django.contrib.staticfiles 已經添加到 settings.INSTALLED_APPS 中。

確保在 settings.py 中設置了 STATIC_URL 。

在已經安裝了的 app 下創建一個文件夾叫做 static ,然后再在這個 static 文件夾下創建一個當前 app 的名字的文件夾,再把靜態文件放到這個文件夾下。例如你的 app 叫做 book ,有一個靜態文件叫做 zhiliao.jpg ,那么路徑為 book/static/book/zhiliao.jpg 。(為什么在 app 下創建一個 static 文件夾,還需要在這個 static 下創建一個同 app 名字的文件夾呢?原因是如果直接把靜態文件放在 static 文件夾下,那么在模版加載靜態文件的時候就是使用 zhiliao.jpg ,如果在多個 app 之間有同名的靜態文件,這時候可能就會產生混淆。而在 static 文件夾下加了一個同名 app 文件夾,在模版中加載的時候就是使用 app/zhiliao.jpg ,這樣就可以避免產生混淆。)

如果有一些靜態文件是不和任何 app 掛鉤的。那么可以在 settings.py 中添加 STATICFILES_DIRS ,以后 DTL 就會在這個列表的路徑中查找靜態文件。比如可以設置為:

STATICFILES_DIRS = [   os.path.join(BASE_DIR,"static") ]

在模版中使用 load 標簽加載 static 標簽。比如要加載在項目的 static 文件夾下的 style.css 的文件。那么示例代碼如下:

{% load static %}   <link rel="stylesheet" href="{% static 'style.css' %}" rel="external nofollow" >

如果不想每次在模版中加載靜態文件都使用 load 加載 static 標簽,那么可以在 settings.py 中的 TEMPLATES/OPTIONS 添加 'builtins':['django.templatetags.static'] ,這樣以后在模版中就可以直接使用 static 標簽,而不用手動的 load 了。

如果沒有在 settings.INSTALLED_APPS 中添加 django.contrib.staticfiles 。那么我們就需要手動的將請求靜態文件的 url 與靜態文件的路徑進行映射了。示例代碼如下:

from django.conf import settingsfrom django.conf.urls.static import staticurlpatterns = [  # 其他的url映射] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到python教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 谢通门县| 寿光市| 铁力市| 基隆市| 西华县| 龙江县| 清水县| 双城市| 玛纳斯县| 丰原市| 遵义县| 洪雅县| 华安县| 利津县| 阳新县| 镇原县| 衢州市| 东明县| 桐乡市| 凤翔县| 开鲁县| 娄底市| 赤壁市| 庆城县| 房产| 涿州市| 乳山市| 连州市| 天峻县| 小金县| 商丘市| 吴江市| 汶上县| 浦县| 剑阁县| 通许县| 恭城| 清河县| 威海市| 嘉黎县| 怀宁县|