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. 模型成员

最新文章

  1. 死去活来,而不变质:Domain Model(领域模型) 和 EntityFramework 如何正确进行对象关系映射?
  2. UTC时间和本地时间的区别
  3. linux配置java开发环境
  4. BZOJ3853 : GCD Array
  5. Android开发中Ant命令编译和APK签名的一些心得
  6. 数列极限---和Gauss(取整)函数有关
  7. Form.KeyPreview 属性2
  8. python 替换windows换行符为unix格式
  9. 解决:Determining IP Information for eth0 一直停留 无法进入系统
  10. Redis源代码分析(二十八)--- object创建和释放redisObject物
  11. WebService返回数据前台获取并处理JSON的相关问题
  12. 删除一个目录及其子目录下的所有.svn文件
  13. 【刷题】【LeetCode】总
  14. 关于 layer.mask = label.layer 出现空白情况
  15. ubuntu中连接mssql数据库sqlserver
  16. [WC2014]紫荆花之恋
  17. springMVC 处理json 及 HttpMessageConverter 接口
  18. (网页)HTML小技巧的一些小技巧
  19. jquery stop()、callback、鏈接
  20. HDU - 4780费用流

热门文章

  1. java基础01-03-注释、标识符、数据类型讲解
  2. Spark-寒假-实验4
  3. Java异常理解之Exception in thread “main“ java.lang.ArrayIndexOutOfBoundsException
  4. 【刷题-LeetCode】154 Find Minimum in Rotated Sorted Array II
  5. 【视频解码性能对比】opencv + cuvid + gpu vs. ffmpeg + cpu
  6. 看看CSDN的吃相
  7. gin框架中请求路由组的使用
  8. gin框架中请求参数的绑定与多数据格式处理
  9. 谷歌浏览器和火狐浏览器如何查看HTTP协议
  10. web.xml最新配置