关于django migrations的使用
来源:互联网 发布:集团军总司令源码程序 编辑:程序博客网 时间:2024/05/17 00:51
django 1.8之后推出的migrations机制使django的数据模式管理更方便容易,现在简单谈谈他的机制和一些问题的解决方法:
1、谈谈机制:migrations机制有两个指令,第一个是makemigrations,第二个是migrate,生成migrations代码的makemigrations指令是用models里面的model和当前的migrations代码里面的model做对比,如果有新的修改,就生成新的migrations代码,migrate指令是用migrations目录中代码文件和django数据库djaong_migrations表中的代码文件做对比,如果表中没有,那就对这些没有的文件按顺序及依赖关系做migrate apply,然后再把代码文件名加进migrations表中。
一些问题的解决方法:
1、旧的项目如果升级到migrations机制:项目当前状态,应该是数据库和model定义一致,然后makemigtations,把生成的migrations initial文件全部加进django_migtrations表中,剩下的工作就和正常使用一样了。
2、managed=Fasle表的测试处理,空库测试,这部分表也需要做进测试数据库,这部分表,可以先在False状态下makemigrations,然后migrate一次,这样那些migrations代码已经属于已执行状态,剩下的就是把model和migrations代码中的manged全部切为true,这样这些代码就可以在空库测试中可用,同时不会再向数据库同步,当然这些表加字段就需要你自己先makemigrations一次,然后手动merge新旧migratons脚本,当然最后最后这部分新的migrations代码需要删除掉。
3、关于migrations Schema学习的问题,migrations代码实际叫Schema,这个代码也是Python代码,非常易读,稍微学一下,以后可以帮助你解决不少类似问题2这样的问题。
- 关于django migrations的使用
- 关于django migrations的使用
- django migrations使用
- Django的migrations机制概述
- django migrations
- Django里的数据同步migrations命令
- Django 1.7 新数据迁移工具 (migrations) 的使用和如何从 South 升级转换
- Django 1.7使用Migrations将模型应用到数据库
- django migrations模块错误
- Running migrations: No migrations to apply.(django不能创建数据库中的表的问题)
- Running migrations: No migrations to apply.(django不能创建数据库中的表的问题)
- Django删除migrations文件夹中的文件后出现的异常
- 如何在 Django 中使用 django-south, 实现数据迁移 (data migrations)
- 【Django】-- django.db.migrations.exceptions.InconsistentMigrationHistory
- 使用 Code First Migrations 更新数据库遇到的问题
- MyBatis Migrations使用中需要注意的地方
- 报错 django.db.migrations.exceptions.InconsistentMigrationHistory
- Django 禁用Migrations 给 Unit Test 提速
- rails 练习9 --整理文章列表上的连接
- mysql表空间
- Apache之Cannot load modules/mod_access_compat.so into server
- 用PCA(主成分分析法)进行信号滤波
- Java中Synchronized的用法
- 关于django migrations的使用
- Cocoapods踩坑记录
- 关于OpenOCD+ST-LINK的若干问题
- Mycat分库分表
- Android控件入门1
- LeetCode 312. Burst Balloons 解题报告
- 反转链表
- c#中 base64字符串与普通字符串互转
- RL强化学习 C++实现