1.开发流程

- 配置数据库
- 定义模型类
- 生成迁移文件
- 执行迁移生成数据表
- 使用模型类进行增删改查操作

2.ORM

- **概述**:对象->关系->映射
- **任务**
-- 根据对象类型生成表结构
-- 将对象、列表的操作转换为sql语句
-- 将sql语句查询到的结果转换为对象、列表
- **优点**
-- 极大减轻了开发人员的工作量、不需要面对因数据库的变更而修改代码

3.定义模型

-** 模型、属性、表、字段间的关系**
-- 一个模型类在数据库中对应一张表,在模型类中定义的属性对应该模型对照表中的一个字段
- **定义属性**
-- **字段类型**
CharField(max_length=):字符串类型,默认html表单textinput
DecimalField(max_digits=None, decimal_places=None)
-使用python的Decimal实例表示的十进制浮点数
-第一个参数:位数总数;第二个参数:小数点后的数字位数
DateField([auto_now=False,auto_now_add=False])
- auto_now: 每次保存对象时,自动设置该字段为当前时间,用于“最后一次修改”的时间戳
- auto_now_add: 当对象第一次创建时自动设置当前时间,用于创建的时间戳
-- **关系**
- **分类**
- ForeignKey: 一对多,将字段定义在多的端中
- ManyToManyField: 多对多,将字段定义在两端中
- oneToOneField: 一对一,将字段定义在任意一端中
- **用一访问多**
- 格式:对象.模型类小写_set(grade.students_set)
- **1v1**
- 格式:对象.模型类小写(grade.students)
- **访问id**
- 格式:对象.属性_id(student.sgrade_id)
-** 创建模型类**
- **元选项**
-- 在模型类中定义的Meta类,用于设置元信息
- db_table: 定义数据表名,推荐使用小写字母,数据表名默认为项目名_类名小写
- ordering:对象的默认排序字段,获取对象的列表时使用(ordering['id']升序,ordering['-id']降序);排序会增加数据库的开销

4. 模型成员

django模型01的更多相关文章

  1. django模型中的关系对应

    显然,关系数据库的力量在于将表相互关联.Django提供了定义三种最常见的数据库关系类型的方法:多对一,多对多和一对一. 在说明之前,首先来理解一下这三个概念: 多对一: 两个集合a,b;集合a中的多 ...

  2. python3之Django模型(一)

    1.模型概述 模型是关于您的数据的唯一,明确的信息来源,它包含您正在存储的数据的重要字段和行为.通常,每个模型映射到单个数据库表. 每个模型都是一个子类的python类django.db.models ...

  3. Django模型层Meta内部类详解

    Django 模型类的Meta是一个内部类,它用于定义一些Django模型类的行为特性.以下对此作一总结: abstract      这个属性是定义当前的模型类是不是一个抽象类.所谓抽象类是不会对应 ...

  4. django模型

    用django时,只要用到数据库就得用到模型. 一.数据库的MTV开发模式 从MVC到MTV 所谓软件架构的MVC模式将数据的存取逻辑(Module),表现逻辑(View)和业务逻辑(Controll ...

  5. 【Python】django模型models的外键关联使用

    Python 2.7.10,django 1.8.6 外键关联:http://www.bubuko.com/infodetail-618303.html 字段属性:http://www.cnblogs ...

  6. django模型中的抽象类(abstract)

    首先介绍下django的模型有哪些属性:先看例子: Django 模型类的Meta是一个内部类,它用于定义一些Django模型类的行为特性.以下对此作一总结: abstract 这个属性是定义当前的模 ...

  7. Django模型之Meta选项详解

    Django模型类的Meta是一个内部类,它用于定义一些Django模型类的行为特性.而可用的选项大致包含以下几类 abstract 这个属性是定义当前的模型是不是一个抽象类.所谓抽象类是不会对应数据 ...

  8. Django模型-数据库操作

    前言 前边记录的URLconf和Django模板全都是介绍页面展示的东西,也就是表现层的内容.由于Python先天具备简单而强大的数据库查询执行方法,Django 非常适合开发数据库驱动网站. 这篇开 ...

  9. python django模型内部类meta详细解释

    Django 模型类的Meta是一个内部类,它用于定义一些Django模型类的行为特性.下面对此作一总结: abstract      这个属性是定义当前的模型类是不是一个抽象类.所谓抽象类是不会相应 ...

随机推荐

  1. element ui table 表格排序

    实现elementui表格的排序 1:给table加上sort-change,给table每一项加上sortable和column-key,排序是根据column-key来进行排序的 <el-t ...

  2. 自旋锁-JUC系列

    公众号原文:自旋锁-JUC系列 前言 2022!这个年份现在看起来都觉得有那么些恍惚的未来感,然而现在已在脚下. 无边落木萧萧下, 不尽长江滚滚来! 人生如白驹过隙! 本来计划最近把AQS源码分析做了 ...

  3. java基础05-类型转换

    java基础05-类型转换 由于Java是强类型语言,所以要进行有些运算的时候,需要用到类型转换. 低 ---------------------------> 高 byte , short , ...

  4. JSP页面使用EL表达式不显示实际数据

    今天在学习有关jsp的相关知识内容时,遇到了el表达式只是显示括号里面的内容 代码如下: <%@ page contentType="text/html;charset=UTF-8&q ...

  5. Sentry 开发者贡献指南 - 浏览器 SDK 集成测试

    Sentry 的浏览器 SDK 的集成测试在内部使用 Playwright.这些测试在 Chromium.Firefox 和 Webkit 的最新稳定版本上运行. https://playwright ...

  6. 在3G移动通信网络信令流程里获取用户电话号的一种方法(中国电信cdma2000)

    首先这些关于电话号的的寻找都是在分组域进行的 然后是首先在rp接口的A11接口寻找,没有看到,于是到pi接口,研究radius协议 发现在协议里也不含有与用户电话号码mdn相关的元素 然后偶遇一篇文档 ...

  7. Iptables的命令与用法

    目录 一:iptables的用法 1.iptables简介 二:Iptables链的概念 1.那四个表,有哪些作用? 2.那五条链,运行在那些地方? 3.Iptables流程图 三:iptables的 ...

  8. 011 Linux 打包与解压 tar

    01 压缩.打包命令有哪些? Linux上有着各种压缩.打包的工具:tar.gzip.zip.7z,而 tar 应该算是 Linux 官宣的压缩工具了. tar 的核心压缩工具其实是 gzip,在其上 ...

  9. 最长公共子序列-LIS

    题目描述 时间限制:1.0s 内存限制:256.0MB 问题描述 给定一个长为\(n\)的序列,求它的最长上升子序列的长度. 输入格式 输入第一行包含一个整数\(n\). 第二行包含\(n\)个整数\ ...

  10. 普通web项目一直无法访问页面,直接报404

    错误:普通web项目一直无法访问页面,直接报404 原因:写了一个过滤乱码的类: 而在类上加了WebServlet注解,其实应该是WebFilter注解, 总结:基础不扎实,有些东西只会用,而不知道原 ...