创建项目 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 %}

Django 模版语法 一的更多相关文章

  1. django 模版 语法与使用

    目录 django 模版语法与使用 django模板语言介绍 (摘自官方文档) 链接 什么是模板? 模板语句的 注释 变量 {{ 变量 }} 点(.)在模板语言中有特殊的含义,用来获取对象的相应属性值 ...

  2. Django 模版语法与使用

    目录 Django 模版语法与使用 django模板语言介绍 (摘自官方文档) 链接 什么是模板? 模板语句的 注释 变量 {{ 变量 }} 点(.)在模板语言中有特殊的含义,用来获取对象的相应属性值 ...

  3. Django 模版语法 测试环境 ORM单表查询

    模版语法 传值 视图函数向前端html页面传值,基本上所有的数据类型都可以渲染在前端页面上. views.py from django.shortcuts import render, redirec ...

  4. django 模版语法及使用

    模版的定义 模版是一个文本,用语分离文档的表现形式和内容,通常用于生成html 模版当中能够使用的python语法非常少,for ,if 之类,还有ifequal,结束的时候也要写endifequal ...

  5. Django 模版语法

    一.简介 模版是纯文本文件.它可以产生任何基于文本的的格式(HTML,XML,CSV等等). 模版包括在使用时会被值替换掉的 变量,和控制模版逻辑的 标签. {% extends "base ...

  6. Django 模版语法 三

    使用自定义simple_tag 在 app01 下面创建 templatetags 文件夹,在创建 my_tag.py 文件,内容如下: from django import template fro ...

  7. Django 模版语法 二

    变量的过滤器(filter)的使用 过滤器:upper, lower, first, capfirst 在 views.py 中修改 from django.shortcuts import rend ...

  8. Django 模板 语法 变量 过滤器 模板继承 组件 自定义标签和过滤器 静态文件相关

    本节目录 一 语法 二 变量 三 过滤器 四 标签Tags 五 模板继承 六 组件 七 自定义标签和过滤器 八 静态文件相关 一 语法   模板渲染的官方文档 关于模板渲染你只需要记两种特殊符号(语法 ...

  9. Django模版语言的复用 1. include标签--模版导入 2.inclusion_tag自定义标签--模版导入 3.母版

    include标签--模版导入 ''' 前提:项目中,往往会出现多个页面拥有一个或几个相同的页面版块,或是一个页面多个页面版块是相同的 如何运用:可以将多个样式标签的集合进行封装,对外提供版块的名字( ...

随机推荐

  1. 【POJ - 1321】棋盘问题 (dfs)

    棋盘问题 Descriptions: 在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别.要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋盘 ...

  2. 一个 Java 对象到底有多大?

    阅读本文大概需要 2.8 分钟. 出处:http://u6.gg/swLPg 编写 Java 代码的时候,大多数情况下,我们很少关注一个 Java 对象究竟有多大(占据多少内存),更多的是关注业务与逻 ...

  3. logstash | logstash && logstash-input-jdbc 安装

    Windows系统:          1.安装Logstash  1.1 进入官网下载zip包                  [1]  https://artifacts.elastic.co/ ...

  4. ROS学习笔记三:编写第一个ROS节点程序

    在编写第一个ROS节点程序之前需要创建工作空间(workspace)和功能包(package).   1 创建工作空间(workspace) 创建一个catkin_ws: #注意:如果使用sudo一次 ...

  5. 2017 JUST Programming Contest 3.0 D. Dice Game

    D. Dice Game time limit per test 1.0 s memory limit per test 256 MB input standard input output stan ...

  6. 对char类型的数组进行冒泡排序

    package maopaopaixu; import java.util.Arrays; import java.util.Scanner; public class Demo02 { public ...

  7. [转]无废话SharePoint入门教程二[SharePoint发展、工具及术语]

    本文转自:http://www.cnblogs.com/iamlilinfeng/p/3186919.html 一.前言 1.由于上一篇文章的标题命名失误,此篇标题写给百度搜索”什么是SharePoi ...

  8. Android开发学习——android反编译

    第一种: 1.下载下边的三个jar包,对dex2jar和jd-gui进行解压 2.将需要反编译的apk后缀名改为.rar,然后进行解压 3.将解压后生成的classes.dex加入第一步解压后的dex ...

  9. Laravel环境搭建

    在有了初步认知后,当然就要开始在自己的电脑上搭建Laravel的开发环境了. 系统环境需求 PHP 5.3.7或者更高版本,如果没有系统没有安装PHP环境的,请到下面地址下载:http://cn2.p ...

  10. [BZOJ2809][Apio2012]dispatching 贪心+可并堆

    题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2809 我们考虑以每一个节点作为管理者所得的最优答案,一定是优先选择所要薪水少的忍者.那么首 ...