模板标签(未完待续)

1.常用模板标签

{% load static %}
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>这是第一个页面</title>
    <link rel="stylesheet" href="{% static 'teacher/css/first.css' %}">
{#    <link rel="stylesheet" href="/static/teacher/css/first.css">#}
</head>
<body>
    <table>
        <tr>
            <th>序号</th>
            <th>姓名</th>
            <th>id</th>
        </tr>
        {% for student in students %}
            {% with stu=student %}
                别名:{{ stu }}
            {% endwith %}
        <tr {% if student.id == 3 %} style="background: blue" {% endif %}>
            <th><a href={% url 'teacher:name' student.name %}>{{ forloop.counter }}</a></th>
            <th>{{ student.name }}</th>
            <th>{{ student.id }}</th>
        </tr>
        {% endfor %}
    </table>
    <p style="color: black">{{ students }}</p>
    <h1 style="color: aqua">啦啦啦</h1>
    <p style="color: red">现在的时间是:{{ now|date:'Y年m月d日 H:i:s' }}</p>
    <p style="color: gold">我是列表:{{ lt }}</p>
    <p style="color: green">我是字典:{{ dt }}</p>
    <p style="color: purple">我是列表的一个值:{{ lt.1 }}</p>
    <p style="color: #000000">我是列表的第一个值:{{ lt|first }}</p>
    <p style="color: red">我是列表的最后一个值:{{ lt|last }}</p>
    <p style="color: red">我是列表的最后一个值相加后的值:{{ lt|last|add:5 }}</p>
    <p style="color: green">我是列表的切片{{ lt|slice:'::-1' }}</p>
    <p style="color: blue">我是列表的切片{{ lt|join:'/' }}</p>
    <p style="color: purple">我是字母{{ st }}</p>
    <p style="color: purple">我是字母大写{{ st|capfirst }}</p>
    <p style="color: purple">我是字母全大写{{ st|upper}}</p>
    <p style="color: purple">我是字母小写{{ st|lower }}</p>
</body>
</html>

在这个知识之前,我先导入一段代码,这是之前的一个form表单,解释一下代码,这个第一行就是标题行,其实主要是{% for student in students %}{% endfor %},这是什么呢?这个就是循环,这里的students是在views文件中的字典列表,就是相当于把每一个字典从列表中取出来了。

from django.shortcuts import render, redirect
from django.http import HttpResponse
from datetime import datetime
# Create your views here.

app_name = 'teacher'

def test1(request):
    now = datetime.now()  # 获取当前时间
    lt = [1, 2, 3, 4]
    st = 'alallala'
    dt = {'name': 'tomas', 'age': 18, 'sex': 'male'}
    stu = [{'name': 'tuo', 'id': 1}, {'name': 'ma', 'id': 2}, {'name': 'si', 'id': 3}, {'name': 'cheng', 'id': 4},]
    return render(request, 'teacher/teacher.html', context={
        'now': now,
        'lt': lt,
        'dt': dt,
        'st': st,
        'students': stu,
    })

def name(request, name):
    return HttpResponse("{}同学的名字".format(name))

这就是views文件。

"""CRM URL Configuration

The `urlpatterns` list routes URLs to views. For more information please see:
    https://docs.djangoproject.com/en/2.1/topics/http/urls/
Examples:
Function views
    1. Add an import:  from my_app import views
    2. Add a URL to urlpatterns:  path('', views.home, name='home')
Class-based views
    1. Add an import:  from other_app.views import Home
    2. Add a URL to urlpatterns:  path('', Home.as_view(), name='home')
Including another URLconf
    1. Import the include() function: from django.urls import include, path
    2. Add a URL to urlpatterns:  path('blog/', include('blog.urls'))
"""
from django.contrib import admin
from django.urls import path
from . import views

app_name = 'teacher'

urlpatterns = [
    path('admin/', admin.site.urls),
    path('test1/', views.test1, name='test1'),
    path('name/<name>', views.name, name='name'),
]

这是urls文件,就是开辟路径的文件。

p{
    /*font-size: 20px;*/
}
table{
    border-collapse: collapse;
}
th,td{
    width: 100px;
    border: 1px solid red;
    text-align: center;
}
a{
    text-decoration: none;
}

这是css文件,用于装饰用的。
我们来从头到尾的理顺整个顺序,首先我们输入的路径是/teacher/test1/,首先就会在urls中查找路径,就会跳转到views中,之后通过views文件中的render跳转到html文件中,而html中的"{% static ‘teacher/css/first.css’ %}"会导入css文件用来渲染页面,再通过<a href={% url ‘teacher:name’ student.name %}这种url方法又重新回到app下的name的path下,在访问views中叫name的def,这样就实现了跳转的功能。
{%load%}:导入css文件的方法
{{}}:主要是传值
{%%}:主要是条件语句,例如循环判断等
{%with%}:改成别名,注意等号前后不要缩进
{%url%}:通过app_name加上path的name实现跳转。
当然这里还有一个判断语句。

2.include,extends,block

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
就会实现这个功能。
当然,这里也是可以导入js功能的。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值