django模板語法學習(模板變量,for循環,if語句)


首先通過django內置的模板需要達到的效果:數據加模板就形成了html頁面。

如圖:

總所周知,django的mvt模式,是屬於前后端不分離的模式。所有得先在templates目錄下新建一個personinfo.html文件

如圖:

模板內容如下:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<!--解決圖片引用跨域問題-->
<meta name="referrer" content="no-referrer">
<title>博客信息</title>
</head>
<body>
<h1>{{ blog_name }}</h1>
<p>姓名:{{ username }}</p>
<p>年齡:{{ age }}</p>

<!--<p>感興趣的技術:{{ fancy.0 }},{{ fancy.1 }},{{ fancy.2 }}</p>-->
<!--模板for循環語法-->

<p>感興趣的技術
{% for i in fancy %}
{{ i }}|
{% endfor %}
</p>

<h1>通過字典對象取值</h1>
<a>博客地址:{{ blog.url }}</a>
<p>頭像</p>
<img src="{{ blog.img }}">
<h1>獲取類的屬性,方法值</h1>
<p>關注數:{{ myblog.guangzhu }}</p>
<p>粉絲數:{{ myblog.fensi }}</p>
</body>
</html>

版本變量要從視圖函數里面取值,通過以下方式:

list類型:通過下標取值

字典對象:通過.key取值

如果是取值的是對象,就通過類名.方法名取值:

接下來就是在應用的,views.py文件里面編寫視圖函數。

如圖:

視圖函數內容如下:

# todo 個人信息
def personinfo(request):

    context = {
        "blog_name":"圓覺",
        "username":"",
        "age":23,
        "fancy":["python","django","requests"],
        "blog":{"url":"https://www.cnblogs.com/xiamaojjie/",
                "img":"https://pic.cnblogs.com/avatar/1772245/20191102152106.png",
                }

    }

    class Myblog():

        def __init__(self):

            self.guangzhu = 3
            self.fensi = 7

        def guangzhu(self):

            return self.guangzhu

        def fensi(self):

            return self.fensi

    myblog = Myblog()

    context["myblog"] = myblog


    return render(request,"personinfo.html",context)

 render()需要傳遞3個參數,第一個是request,第二個是模板名稱,第3個是context,傳輸的內容。

for循環展示列表 內容:

添加url映射:應用和項目直接建立關聯

 if 語句判斷:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>導航欄</title>
</head>
<body>
{% for i in name_list %}

<h1>{{ i.type }}</h1>

    <p>

    {% for j in i.value %}
        {{ j }} {% if not forloop.last %} | {% endif %}   <!--如果是最后一個就不顯示管道|-->
    {% endfor %}

    </p>

{% endfor %}

</body>
</html>

forloop模板變量:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM