1.1 作用

  • MTV框架中包括一个重要的部分,它实现了数据模型与数据库的解耦,即数据模型的设计不需要依赖于特定的数据库,通过简单的配置就可以轻松更换数据库,这极大的减轻了开发人员的工作量,不需要面对因数据库变更而导致的无效劳动

1.2 具体功能

    1 创建表,修改表,删除表
2 插入数据
3 修改数据
4 删除数据
注:不能创建库,在连接mysql前确保库先创建好

1.3 与Python的对应关系

类名-----》表
对象------》一条数据
属性-----》字段
--------------------------------------
- class UserInfo(models.Model):
nid=models.AutoField(primary_key= True) #自增主键
name=models.CharField(max_length=32)
password=models.CharField (max_length= 32,null=True)

1.4 使用mysql步骤

1、 创建数据库(orm不能创建数据库)
2、 在settings里的DATABASES配置
'default': {
'ENGINE': 'django.db.backends.mysql',
'HOST':'127.0.0.1',
'PORT':3306,
'USER':'root',
"PASSWORD":'',
'NAME': 'db1', #指定已有的库名
3、 在app的init.py文件里写上:
import pymysql
pymysql.install_as_MySQLdb()
注: django 默认用mysqldb连接mysql数据库,但是mysqldb这个模块不支持python3.0以后的版本,
所以用pymysql来替换mysqldb
4、 在models里定义类,类必须继承 models.Model
5、 写属性,对应着数据库的字段
6、 执行 python manage.py makemigrations(相当于做一个记录)
7、 执行 python manage.py migrate (会把记录执行到数据库) 注:创建出来的表名是app的名字_类名

最新文章

  1. [笔记]linux下环境变量配置字段
  2. NFA转DFA - json数字识别
  3. 《The Evolution of Lua》翻译part 2
  4. c# 映射对比测试
  5. Java:Map
  6. Miscellaneous--Tech
  7. C# 模式窗口下更新进度条
  8. [转载]JQuery获取元素文档大小、偏移和位置和滚动条位置的方法集合
  9. linux分区和系统文件和挂载
  10. 【算法】—— LRU算法
  11. hiveserver2启动成功但无法通过beeline连接
  12. AHOI(十二省联考)2019 退役记
  13. Java基础:整型数组(int[]、Integer[])排序
  14. 11G新特性 -- 块介质恢复性能增强(block media recovery)
  15. 通过WSL在Windows下安装子Linux系统
  16. 记录一次elasticsearch-php工作过程
  17. Centos7配置
  18. 图片后门捆绑利用工具 – FakeImageExploiter
  19. horizon源码分析(二)
  20. Map 的四种遍历方式

热门文章

  1. 毕业设计——Django表单重复提交问题
  2. rsync + sersync 实现实时数据同步
  3. Laravel框架中打印sql
  4. 基于Gecko内核的简单浏览器实现
  5. Mybatis 常用注解
  6. 从头开始学gradle【Gradle 构建基础】
  7. Thymleaf 从某处(不包含某处)开始截取字符串到末尾
  8. 小秘书智能app登录
  9. 用vue实现点击编辑按钮将li变为可以输入文本的input
  10. word2vec并行实现小记