美文网首页
基础知识

基础知识

作者: 梦在白云之上 | 来源:发表于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 信息片段

    相关文章

      网友评论

          本文标题:基础知识

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