django简记04

Django是一个实现了MVT处理模式的web框架
MVT处理模式中,核心由三部分组成
 M:model数据模型
 V:view 视图模型[视图处理函数 网页视图]
 T:Teamplate 模板模型[模板语法 网页模板]

1-1 主要内容
 网页视图View——网页
 子项目的网页视图处理[html]
 子项目的静态文件处理[css/js/image/..]
 根项目的公共网页视图处理
 根项目的公共静态文件处理
 模板处理Template——数据从后端传递给前端网页展示
 模板语法:变量处理
 模板语法:程序结构之选择结构
 模板语法:程序结构之循环结构
 模板语法:程序结构之模板继承
 参数处理——前端网页将数据传递给后端进行处理
 软件程序的处理结构
 浏览器请求——8种请求操作
 请求对象Request
 响应对象Response
 参数传递——RESTful风格的参数处理
 参数传递——GET参数处理
 参数传递——POST参数处理
 预留:CSRF~跨域请求伪造
 会话跟踪技术操作
 session
 cookie

1-2 课程内容

  1. 网页视图的处理
    网页:主要是用HTML标记语言开发的视图页面!通过CSS控制其样式、通过JS控制其动作效果、通过图片字体等等控制展示的默认操作!
    Django 作为一个成熟的web框架,对于视图界面的处理也是非常成熟的,并非之前我们开发的通过字符串的风格展示的lower网页!

Django中,网页视图的处理,主要分成两个部分
 根项目——公共的网页视图
 搜狐门户网页
 子项目——某个子项目自己独立的网页视图
 搜狐博客:博客首页
 搜狐新闻:新闻列表
 搜狐体育:最新动态

  1. 子项目的网页定义及处理操作
     创建项目,关联根项目和子项目[settings.py:INSTALLED_APPS],其次关联主路由和子路由[urls.py->include->blog.urls]
     在子项目中创建一个存放网页的文件夹:templates/
     在templates/文件夹中,创建一个子文件夹:名称和子项目名称一致!templates/blog/
     在mysite/blog/templates/blog/文件夹中,创建网页文档!
     在视图处理函数中,渲染返回指定的网页
     Django底层复杂的操作方式
     Django提供的快捷操作方式

  2. 子项目中的静态文件处理
    a) 在子项目模块中,创建一个文件夹:static/
    b) 在static/文件夹中,创建一个子文件夹:名称和子项目一致
    c) 就可以在文件夹中创建各种静态文件
    i. CSS样式
    ii. JS代码
    iii. 图片、字体等等

  3. 根项目下网页视图的处理
    根项目中的网页一般都是所有子项目公共可以访问的网页
    根项目中公共网页的操作和子项目有所不一致

a) 在项目主文件夹中,创建一个任意名称的文件夹,如:temp/,用来存放公共网页
b) 修改根项目配置文件settings.py中的TEMPLATES配置项,DIRS中添加刚才新增的文件夹名称
c) 在视图处理函数中,就可以访问这个网页了!

  1. 根项目下网页视图静态文件处理
    a) 在项目主文件下,创建一个任意名称的文件夹,如:static/,用来存放静态文件
    b) 修改根项目配置文件settings.py,新增STATICFILES_DIRS配置项,将刚才创建的文件夹添加进去

Django是一个实现了MVT处理模式的web框架
M:model数据模型
V:view视图模块[视图处理函数、网页视图(网页、静态文件)]
T:template模板操作[网页视图、模板语法支持]

Django中的网页模板语法:Django Template Language:DTL语法
主要是在网页中进行程序处理的一种编程语法,类似于python语法

主要目的:将服务端程序中处理的数据,传递给网页进行显示!

DTL语法主要组成部分:
 变量处理
 程序结构
 模板继承
 模板标签

初步认识模板语法:DTL
1) DTL模板语法之:变量操作
一般后端程序会给前端网页传递各种变量中存放的数据,如果变量中存放的是基本类型的数据(字符串、数字、布尔值),可以通过一种通用的语法{{变量名称}}将变量的值输出到页面上,如果变量中没有数据输出空白字符!
这样一种特殊语法,其实在各种前端使用的语言中都出现了,并且有一个非常时髦的名称
Mustache语法:主要是通过两对大括号包含变量的方式进行操作的!

后端程序中:msg =”账号或者密码有误”
前段网页中:{{msg}} 展示数据到网页上!

2) DTL模板语法之:选择结构
DTL模板语法中,选择结构,类似python中的if-else结构
{% if 条件 %}
执行的代码
{% elif 条件%}
执行的代码
{% else %}
执行的代码
{% endif %}

3) DTL模板语法之:循环结构
程序后端传递的数据,可能会是一个类似于列表的循环
程序直接处理:使用List列表保存数据
程序从数据库读取数据:读取到类似于列表的数据QuerySet
这样的数据,在网页中按照一定的格式展示,就需要用到循环结构
{% for 变量 in 列表 %}
循环列表中的数据
{% empty %}
如果列表为空执行的代码
{% endfor %}

4) DTL模板语法:模板注释
单行注释:{# 注释内容 #}
多行注释:
{% comment %}
多行注释的内容
{% endcomment %}

你可能感兴趣的:(django简记04)