zoukankan      html  css  js  c++  java
  • Python

    前言:

    在 Django 模板语言中变量用 {{ }},逻辑用 {% %}

    在 urls.py 中添加对应关系

    from django.conf.urls import url
    from django.contrib import admin
    from app01 import views
    
    urlpatterns = [
        url(r'^test/', views.django_test),
    ]
    

    普通变量:

    在 views.py 中编写 django_test 函数

    from django.shortcuts import render, redirect, HttpResponse
    from app01 import models
    
    
    # Django 模板语言变量
    def django_test(request):
        name = "John"
        age = 28
        return render(request, "test.html", {"name1": name, "age1": age})  # 通过字典形式传给 html
    

    接下来写 test.html 页面

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Django 模板语言测试</title>
    </head>
    <body>
    
    <h1>Django 模板语言测试</h1>
    
    {{ name1 }} {{ age1 }}
    
    </body>
    </html>
    

    运行效果:

    如果是用不存在的变量名,将不会在页面显示

    列表:

    如果要显示列表成员的话需要使用循环来显示

    views.py:

    from django.shortcuts import render, redirect, HttpResponse
    from app01 import models
    
    
    # Django 模板语言变量
    def django_test(request):
        name = "John"
        age = 28
        hobby = ["Reading", "Basketball", "Movie", "Music"]
        return render(request, "test.html", {"name1": name, "age1": age, "hobby_list": hobby})
    

    test.html:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Django 模板语言测试</title>
    </head>
    <body>
    
    <h1>Django 模板语言测试</h1>
    
    <!-- 普通变量 -->
    {{ name1 }} {{ age1 }}
    
    <!-- 列表 -->
    {% for hobby in hobby_list %}
        {{ hobby }}
    {% endfor %}
    
    </body>
    </html>
    

    运行效果:

    字典:

    通过 {{ 字典名.key }} 来获取 value

    views.py:

    from django.shortcuts import render, redirect, HttpResponse
    from app01 import models
    
    
    # Django 模板语言变量
    def django_test(request):
        name = "John"
        age = 28
        hobby = ["Reading", "Basketball", "Movie", "Music"]
        info = {"height": 188, "weight": 120}
        return render(request, "test.html", {"name1": name, "age1": age, "hobby_list": hobby, "info": info})
    

    test.html:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Django 模板语言测试</title>
    </head>
    <body>
    
    <h1>Django 模板语言测试</h1>
    
    <!-- 普通变量 -->
    {{ name1 }} {{ age1 }}
    
    <!-- 列表 -->
    {% for hobby in hobby_list %}
        {{ hobby }}
    {% endfor %}
    
    <!-- 字典 -->
    {{ info.height }} | {{ info.weight }}
    
    </body>
    </html>
    

    运行效果:

    类:

    类通过 {{ 对象名.属性 }} 来访问属性,通过 {{ 对象名.方法 }} 来实现方法

    views.py:

    from django.shortcuts import render, redirect, HttpResponse
    from app01 import models
    
    
    # 测试类 Animal
    class Animal(object):
        def __init__(self, specie, name):
            self.specie = specie
            self.name = name
    
        def sleep(self):
            return "%s is sleeping" %self.name
    
    # Django 模板语言变量
    def django_test(request):
        name = "John"
        age = 28
        hobby = ["Reading", "Basketball", "Movie", "Music"]
        info = {"height": 188, "weight": 120}
        a1 = Animal("Cat", "Tom")
        a2 = Animal("Dog", "Jim")
        return render(
            request,
            "test.html",
            {
                "name1": name,
                "age1": age,
                "hobby_list": hobby,
                "info": info,
                "a1": a1,
                "a2": a2,
            })
    

    test.html:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Django 模板语言测试</title>
    </head>
    <body>
    
    <h1>Django 模板语言测试</h1>
    
    <!-- 普通变量 -->
    {{ name1 }} {{ age1 }}
    
    <!-- 列表 -->
    {% for hobby in hobby_list %}
        {{ hobby }}
    {% endfor %}
    
    <!-- 字典 -->
    {{ info.height }} | {{ info.weight }}
    
    <br>
    
    <!-- 类 -->
    {{ a1.specie }} | {{ a1.name }} | {{ a1.sleep }}
    <br>
    {{ a2.specie }} | {{ a2.name }} | {{ a2.sleep }}
    
    </body>
    </html>
    

    运行效果:

  • 相关阅读:
    Linux(Contos7.5)环境搭建之JDK1.8安装(二)
    python微信域名或者链接批量检测
    表单设计器3-查询面板
    表单设计器2-表格布局
    表单设计器1-基本操作
    信息无障碍国内标准
    信息无障碍国际标准
    信息无障碍服务对象
    信息无障碍定义
    E8.Net工作流开发问题
  • 原文地址:https://www.cnblogs.com/sch01ar/p/11247553.html
Copyright © 2011-2022 走看看