Mysql操作
前言
在实际开发过程中,我们经常会遇到数据库表已经建立好了,现在只需要开发项目功能,操作已有数据库表的情况。
Django为我们提供了inspecdb的方法。他的作用即是对已经存在的数据库表来反向映射结构到models.py中.
操作
第一步: 先建立数据库连接
在项目的 settings.py文件中配置mysql的连接信息
再修改__init__.py
注:pymysql.version_info = (1, 4, 3, "final", 0) 如果数据迁移时没报错,此条命令可不加
第二步: 采用 inspectdb 命令反向映射
python manage.py inspectdb > models.py
执行完后,在manage.py文件的下面会出现一个models.py文件,里面包含了已有数据库的所有表及结构
第三步: 使用模型,把要使用的模型中的 managed修改成True(False表示在迁移时候不新建此表),然后复制到自己的应用目录下即可
生成models文件后,里面最好只保留自己定义的表结构,其余系统自带的都可以删除掉,防止后续出现奇怪的错误
举例:比如要使用 student表,修改managed=True后,复制内容到自己应用的models.py文件中
把需要的内容复制完后,就可以删除掉自动生成的这个models.py 文件
如果只想单独生成某个指定的表模型也是可以的,比如我现在只想生成Student表
python manage.py inspectdb student
然后将模型类复制到自己的应用下,修改 managed的值为 True即可
程序猿与投资生活实录已改名为 程序猿知秋,WX 公众号同款,欢迎关注!!