溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Django模板導(dǎo)入母版繼承和自定義返回Html片段過程解析

發(fā)布時(shí)間:2020-10-22 01:02:21 來源:腳本之家 閱讀:134 作者:Roc_Atlantis 欄目:開發(fā)技術(shù)

1.ROOT_URLCONF = '總路由所在路徑(比如untitled.urls)'<===默認(rèn)情況是這樣

根路由的路徑是可以修改的:ROOT_URLCONF = app01.urls<===根路由寫在app01下面

2.靜態(tài)文件引入的三種方式

一:

<link rel="stylesheet" href="/static/dd/ssmycss.css" rel="external nofollow" >          .

二:

{% load static %}
<link rel="stylesheet" href="{% static 'dd/ss/mycss.css' %}" rel="external nofollow" >

三:

<link rel="stylesheet" href="{% get_static_prefix %}dd/ss/mycss.css" rel="external nofollow" >

3.模板導(dǎo)入===就是這么簡單

把公共的部分,放在一個(gè)新建的模板中,比如index.html。

想在哪里用公共的部分,直接{%include ‘index.html'%}<===標(biāo)簽

母版繼承 === 這個(gè)才是個(gè)小重點(diǎn)

母版的樣式是固定的,所以繼承過來的盒子不論在前還是在后,位置都是不變的。

1 寫一個(gè)母版 base.html ===母版
 2 要更改的地方( )
 {% block base %} base是母版的盒子名稱
  母版的盒子里也可以寫東西
 {% endblock %}
 3 調(diào)用:
  3.1 必須寫在第一行 {%extends 'base.html' %}
  3.2  {% block base %}  
   自己的東西   
   {% endblock my_head%} 這兒加my_head是為了更清晰的看到結(jié)束條件。
  3.3 還想用母版里的內(nèi)容({{block.super}} 放在那,原來母版里的東西,就會(huì)渲染在哪)
   {% block base %}
   {{block.super}}
   自己的東西   
   {% endblock my_head%}
  3.4 如過不繼承盒子,它會(huì)用原來的內(nèi)容,如果繼承了,沒寫自己的東西,它會(huì)空白,替換了原來的盒子。
  3.5 盒子在繼承時(shí),跟順序無關(guān)

自定義返回Html片段步驟

自定義 inclusion_tag
 1 先去setting里面把a(bǔ)pp名字配置上
 2 再app目錄下創(chuàng)建一個(gè)templatetags模塊
 3 寫py文件(my_test.py)
 4 from django import template
 5 register=template.Library()
 6 @register.inclusion_tag('test.html')
 def my_inclusion(n):
  data=[]
  for i in range(n):
  data.append('第%s行'%i)
  return {'data':data}
 7 寫test.html頁面
  <ul>
   {% for choice in data %}
   <li>{{ choice }}</li>
   {% endfor %}
  </ul>
 8 {% load my_test %}
 9 {% my_inclusion 10 %} 它會(huì)返回html的頁面

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

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI