zoukankan      html  css  js  c++  java
  • Django 模版语法 一

    创建项目 django_template 和 app

    django-admin startproject django_template
    python manage.py startapp app01
    

    在 settings.py 中修改

    INSTALLED_APPS = [
        'django.contrib.admin',
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.messages',
        'django.contrib.staticfiles',
        'app01',
    ]
    
    ...
    
     'DIRS': [os.path.join(BASE_DIR, 'templates')],
    

    在 urls.py 中修改:

    from django.contrib import admin
    from django.urls import path
    from app01 import views
    
    urlpatterns = [
        path('admin/', admin.site.urls),
        path('index/', views.index),
    ]
    

    在 views.py 中添加函数

    def index(req):
        s="hello"
        s2=[1,22,333]
        return render(req,"index.html",{"list":s2})
    
    

    创建 templates 文件夹,添加 index.html 文件,获取第三个数组的值

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
    <h1>Template</h1>
    {{ list.2 }}
    </body>
    </html>
    
    python manage.py runserver 8000
    

    访问 http://127.0.0.1:8000/index/

    传递字典

    在 views.py 中添加

    def index(req):
        s="hello"
        s2=[1,22,333]
        s3={"username":"klvchen", "age":30}
        return render(req,"index.html",{"obj":s3})
    
    

    在 index.html 中修改

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
    <h1>Template</h1>
    {{ obj }}
    {{ obj.username }}
    </body>
    </html>
    

    传递时间

    在 views.py 中添加

    from django.shortcuts import render
    import datetime
    
    # Create your views here.
    
    def index(req):
        s="hello"
        s2=[1,22,333]
        s3={"username":"klvchen", "age":30}
        s4=datetime.datetime.now()
        return render(req,"index.html",{"obj":s4})
    

    在 index.html 中修改

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
    <h1>Template</h1>
    {{ obj.year }}
    {{ obj.month }}
    </body>
    </html>
    

    传递类

    在 views.py 中添加

    import datetime
    
    # Create your views here.
    
    def index(req):
    
        class Person:
            def __init__(self, name, age):
                self.name = name
                self.age = age
    
        s="hello"
        s2=[1,22,333]
        s3={"username":"klvchen", "age":30}
        s4=datetime.datetime.now()
        s5=Person("klvchen", 30)
        return render(req,"index.html",{"obj":s5})
    

    在 index.html 中修改

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
    <h1>Template</h1>
    {{ obj.name }}
    {{ obj.age }}
    {{ obj }}
    </body>
    </html>
    

    {% if %} ,{% for %}的使用

    在 views.py 中修改

    def index(req):
    
        s="hello"
        s2=[1,22,333]
        return render(req,"index.html",{"obj":s2})
    

    在 index.html 中修改

    {% if True %}
        <p>hello world</p>
    {% endif %}
    
    #循环数组
    {% for i in obj %}
        <p>{{ i }}</p>
    {% endfor%}
    
    #显示下标
    {% for i in obj %}
        <p>{{ forloop.counter}}:{{ i }}</p>
        <!-- 下标从0 开始 -->
        <p>{{ forloop.counter0}}:{{ i }}</p>
        <!-- 倒序 -->
        <p>{{ forloop.revcounter}}:{{ i }}</p>
    {% endfor %}
    
  • 相关阅读:
    计算机基础知识
    第三次作业函数
    c博客作业01顺序、分支结构
    C语言第02次作业循环结构
    c语言第0次作业
    JAVA在Eclipse里能运行,但是在cmd中却提示找不到主函数的错误【环境变量配置】
    MFC自定义消息机制步骤
    关于VC6.0界面MFC设置成XP风格问题【可以变得更加好看】
    VC6 下学习使用Teechart8记录 一 安装和熟悉teechart8【一个非常好的画图插件】
    Matlab中,让程序自动处理类似A1,A2,A3变量的方法。
  • 原文地址:https://www.cnblogs.com/klvchen/p/10815351.html
Copyright © 2011-2022 走看看