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

首頁 > 編程 > Python > 正文

django模板加載靜態(tài)文件的方法步驟

2020-02-16 01:26:03
字體:
供稿:網(wǎng)友

加載靜態(tài)文件

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

首先確保 django.contrib.staticfiles 已經(jīng)添加到 settings.INSTALLED_APPS 中。

確保在 settings.py 中設(shè)置了 STATIC_URL 。

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

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

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

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

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

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

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

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

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持武林站長站。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 迭部县| 贵溪市| 莒南县| 漳平市| 双辽市| 清苑县| 台南市| 自贡市| 自治县| 西林县| 灌阳县| 巴彦淖尔市| 南安市| 通城县| 高要市| 揭阳市| 营山县| 梅河口市| 交口县| 鸡西市| 双流县| 宣恩县| 卢氏县| 五台县| 县级市| 泰兴市| 礼泉县| 友谊县| 唐山市| 广丰县| 龙江县| 繁峙县| 贵德县| 新野县| 商河县| 黄陵县| 河间市| 阜城县| 大足县| 株洲县| 岐山县|