首页 > 其他分享 >Django模板、模版语言和静态文件

Django模板、模版语言和静态文件

时间:2024-07-31 21:10:14浏览次数:15  
标签:文件 静态 模版 list Django html user 目录 模板

1. templates模板(html)

  1. 在app目录下创建一个templates目录,用于存放网页模板

  2. 利用url返回网页

    点击查看代码
    def user_list(request):
        return render(request,"user_list.html");
    
    输入url地址时,会去app目录下的templates目录下寻找名为user_list的HTML文件(根据app注册顺序,逐一去它们的temps寻找)
  3. 创建一个名为user_list.html的网页模版

  4. 编写视图函数

    视图函数
    def user_list(request):
        # 去app目录下的templates目录下寻找名为user_list的HTML文件(根据app注册顺序,逐一去它们的temps寻找)
        return render(request,"user_list.html")
    

2. 静态文件

  1. 在app目录下创建一个static目录,用于存放静态文件
  2. static目录下创建css、img、js、plugins目录,用于存放各种类型静态文件
  3. 在html文件中读入静态文件<img src="/static/img/1.jpg">
  4. 以往的html读取文件那样,更改静态文件位置时,所有读取静态文件的地方都需要配置。而Django提供的{% load static %}在网页文件中进行静态文件读取配置,只需要改动settings.py中设置的静态文件地址STATIC_URL = 'static/'即可。

3. 模版语言

  1. {% 内容 %}为占位符,这是Django语法规定的书写形式,占位符内的内容可为“for”循环或者“if”判断

    if判断
    {% if n1 == "XXX" %}
        <h1>!!!</h1>
    {% elif n1 == "飞飞" %}
        <h1>!?!</h1>
    {% else %}
        <h1>???</h1>
    {% endif %}
    

    注:{% endif %}为结束判断,{% endfor %}为结束循环。

  2. {{ n1 }}显示n1的内容,若n1可为列表,如果要去列表中的1号元素(第二个元素),则需要用n1.1进行访问

  3. 循环遍历字典

    点击查看代码
    <ul>
    <!--  循环遍历n3的各个键keys,值values,键和值item  -->
        {% for k,v in n3.items %}
            <li>{{ k }} = {{ v }}</li>
        {% endfor %}
    </ul>
    

    注:k读取的为键,v读取的为值。也可以直接用键获取值,如{{ n3.name }}

  4. 遍历字典列表

    点击查看代码
    <!-- 输出字典列表 -->
    {{ n4.0 }}
    {{ n4.0.name }}
    {{ n4.1.sex }}
    
    {% for item in n4 %}
        <div>{{ item.name }} {{ item.date }}</div>
    {% endfor %}
    

4. 总结

  • Django框架运行流程图
    1. 用户发送请求
    2. 系统通过urls寻找绑定的views视图
    3. views访问templates目录下的html文件,内部进行渲染(替换)
    4. views把渲染完的文件返回用户

5. 案例

  • 需要先学习爬虫,故尚未完成。

标签:文件,静态,模版,list,Django,html,user,目录,模板
From: https://www.cnblogs.com/submission/p/18332507

相关文章

  • 六种方式涵盖了Vue 3中定义和使用模板的主要方法
    1.单文件组件(SFC)单文件组件(SingleFileComponent,SFC)是Vue组件开发中最常见的方式。使用.vue文件来定义一个组件,包含<template>、<script>和<style>块。示例1<template>2<div>3<p>{{message}}</p>4</div>5</template>6......
  • Django 集成 celery 与执行结果监控
    Django集成celery与执行结果监控celery架构图一、搭建Django项目环境模块安装pipinstalldjango==3.2pipinstallcelerypipinstallredis#window环境下需要安装eventletpipinstalleventlet创建django项目django-adminstartprojectdjango_celery......
  • 计算机毕业设计django/flask导师双选指导系统python+vue
    通过分析企业对于本科生导师指导平台的需求,创建了一个计算机管理本科生导师指导平台的方案。文章介绍了本科生导师指导平台的系统分析部分,包括可行性分析等,系统设计部分主要介绍了系统功能设计和数据库设计。 Python版本:python3.7+前端:vue.js+elementui框架:django/flask都......
  • P10814 【模板】离线二维数点 题解
    题目传送门思路一眼主席树板子题,但是一看数据范围\(n,m\le2\times10^6\),似了。在线做法应该是似完了,考虑离线做法。我们知道树状数组是可以做二维偏序的,大家应该都知道一个经典问题:对于一个序列,多次询问下标\(\lea\)且数值\(\leb\)的数的个数。回到这道题,相比上面......
  • 易优CMS模板标签language语言列表罗列所有语言列表
    【基础用法】标签:languagename值:web_language_switch描述:语言列表标签,获取多语言列表内容。用法:{eyou:languagetype='default'}<ahref="{$field.url}"><imgsrc="{$field.logo}"alt="{$field.title}">{$field.title}</a>{/eyou:......
  • 计算机毕业设计django+vue“爱宠”宠物用品商店【开题+论文+程序】
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着社会经济的快速发展和人们生活水平的不断提升,宠物已成为越来越多家庭的重要成员,宠物经济的繁荣也随之而来。然而,传统的宠物用品购买方......
  • 公众号 发送模板消息
    <?php$toUserOpenid=$this->request->post("to_user_openid");$config=get_addon_config('equipment');if(!$config||!$config['weappid']||!$config['weappsecret']){......
  • 适用于 JDK 1.8 的 Spring Boot 的 maven 的 pom.xml 模板
    适用于JDK1.8的SpringBoot的maven的pom.xml模板 <?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:sche......
  • 接私活神器:免费云数据库+免费开源模板!!!
    在当今快节奏的数字时代,独立开发者接私活已经成为一种常见的职业选择。作为一名独立开发者,如何高效地完成项目,快速交付高质量的应用,是一个重要的挑战。今天,我要向大家推荐一款接私活的超级神器——MemFireCloud。这款工具不仅提供免费云数据库,还附带大量开源模板,让你的开发......
  • 手把手带你创建HAL版本MDK工程模板
    如何快速开发STM32项目?我们总不能每次开发一个项目就搭建一次工程,这样效率太低了。通常我们会使用一个模板工程,需要开发新项目的时候拿出来添加一些对应的模块及业务代码,一个项目就开发完成了。但对于新手朋友来讲,如何创建一个工程模板对他们来讲是个非常大的挑战。因为这个过......