美文网首页
基础知识

基础知识

作者: 梦在白云之上 | 来源:发表于2023-05-13 12:03 被阅读0次

1 MTC & MTV

1.1 MVC

MVC 是 Model-View-Controller 的缩写,其中每个单词都有其不同的含义:

  • Modle 代表数据存储层,是对数据表的定义和数据的增删改查;
  • View 代表视图层,是系统前端显示部分,它负责显示什么和如何显示;
  • Controller 代表控制层,负责根据从 View 层输入的指令来检索 Model 层的数据,并在该层编写代码产生结果并输出。


    image.png

1.2 MTV

Django 借鉴了经典的 MVC 模式,它也将交互的过程分为了 3 个层次,也就是 MTV 设计模式;

  • Model:数据存储层,处理所有数据相关的业务,和数据库进行交互,并提供数据的增删改查;
  • Template:模板层(也叫表现层)具体来处理页面的显示;
  • View:业务逻辑层,处理具体的业务逻辑,它的作用是连通Model 层和 Template


    image.png

2 ORM模型

ORM (Object Realtional Mapping)即对象关系映射,它是一种基于关系型数据库的程序技术。


image.png

Django 把表模型定义为 Model,他需要继承自django.db.models中的 Model类,只要是与数据表相关的操作,都需要继承这个类

2.1 数据类型

针对数据库中的字段类型,Django ORM 都有对应的 "xxxField" 来表述

字段 说明 字段属性
AutoFiled 默认自增主键(Primary_key=Ture),Django 默认建立id字段为主键。
CharFiled 字符类型 Max_length=32,字符长度需要明确
IntgerFiled 整型 int 整数无需max_length
DateFiled 年月日时间类型 auto_now=True,数据被更新就会更新时间 ;auto_now_add=True,数据第一次参数时产生。
DateTimeFiled 年月日小时分钟秒时间类型 auto_now=True,数据被更新就会更新时间; auto_now_add=True,数据第一次参数时产生。
DecimalFiled 混合精度的小数类型 max_digits=3,限定数字的最大位数(包含小数位);decimal_places=2,限制小数的最大位数。
BooleanFiled 布尔字段,对应数据库 tinyint 类型数据长度只有1位。 值为True或False
TextFiled 用于大文本

2.2 字段选项

选项 作用
max_length 存储长度
verbose_name 表项显示的头
primary 主键
unique 唯一性
null 数据库存储空值为NULL
blank 表单验证将允许一个空值
default 默认值
choices 选项
help_text 在form表单中显示help的内容

2.3 表单代理

实际应用中,广泛存在一个表单需要对应多个界面的情况。以库存管理为例,需要支持修改管理、库存监控、缺货告警等多项应用。

2 URL

URL 的语法格式为:

protocol://hostname[:port]/path[?query][#fragment]

eg https://www.baidu.com/movie/movieshow?id=234&number=1314#name

各参数如下

关键词 说明 参数
protocol 协议 http,通过 HTTP 协议访问该资源,格式 http://;https,通过安全的 HTTPS 协议访问该资源, 格式 https://;file,资源是本地计算机上的文件,格式 file:///;ftp,通过 FTP访问资源,格式 FTP://。
hostname 主机名 放资源的服务器的域名、主机名或 IP 地址username:password@hostname
port 端口号 协议有默认端口号,有时为了安全禁止了默认端口
path 路由地址 由零个或多个/符号隔开的字符串,一般用来表示主机上的一个目录或文件地址
query 查询 从?开始到#为止,它们之间的部分就是参数多个参数之间用&作为分隔符
fragment 信息片段

相关文章

  • 音频基础知识02

     音频基础知识 01  音频基础知识 02  音频基础知识 03  音频基础知识 04 人类收集声音的历史   为...

  • PHP全栈学习笔记18

    php基础知识,JavaScript,jQuery,ajax基础知识 linux基础知识,mysql数据库的基础与...

  • PHP全栈学习笔记18

    php基础知识,JavaScript,jQuery,ajax基础知识 linux基础知识,mysql数据库的基础与...

  • C语言回顾

    基础知识 控制流 基础知识补充 其他主题

  • PHP面试知识脉络(更新中)

    PHP基础知识Javascript、jQuery、ajax基础知识Linux基础知识MySQL数据库的基础与优化程...

  • p2p理财基础知识

    p2p理财基础知识 p2p理财基础知识 p2p理财基础知识

  • 学习Vue框架之前,要有JavaScript的知识储备

    前端三剑客知识储备(有关前端的专题) ☑ HTML基础知识 ☑ CSS基础知识 ☑ JavaScript5基础知识...

  • angular笔记

    第一部分、基础知识--------------------------基础知识------------------...

  • 【学习】其他框架

    Zookeeper Zookeeper基础知识Zookeeper综合知识 HDFS HDFS基础知识 NoSQl ...

  • Python3基础知识

    Python3基础知识 | 基础语法 Python3基础知识 | 编程第一步 Python3基础知识 | 基本数据...

网友评论

      本文标题:基础知识

      本文链接:https://www.haomeiwen.com/subject/rrpesdtx.html