django 中 migrate 命令的说明

普拉弗拉

任何人都可以解释我,迁移将如何在 Django 中发生?实际上,我需要“ ./manage.py migration”命令的完整后端过程

雷诺·范·里斯

作者曾在“引擎盖下的django”会议上对其进行过解释。我对此进行了总结:http : //reinout.vanrees.org/weblog/2014/11/14/2migrations.html

它的工作方式是将所有操作切成微小的依赖项。必须创建的每个单独字段都变成了一个微小的依赖步骤。在步骤列表被排序(通过依赖关系解析循环)到正确的步骤列表中之后,优化器遍历该列表并对其进行优化。例如,如果创建和删除模型,则无需执行任何操作。

难题的最后一部分是图表。它构建内存中所有基本迁移的有向图。为此,它需要读取磁盘上的所有模型。它还会在数据库中查找。那里有一个表格,用于标记已经应用了哪些迁移(或者更确切地说:迁移图中的节点)。

如果您想看一下代码,这里有一些指针:

  • django/db/migrations/autodetector.py, 从 _detect_changes() 开始
  • django/db/migrations/optimizer.py,从reduce()开始
  • django/db/migrations/graph.py
  • django/db/migrations/loader.py

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Shell命令中“ sed”的说明

来自分类Dev

shell命令中“ sed”的说明

来自分类Dev

在Artisan Command中多次调用相同的“ migrate”命令

来自分类Dev

Django-Migrate命令说该表在执行第二次makemigrations之后存在

来自分类Dev

vim中以下text-manipulation命令的说明

来自分类Dev

在第二栏中说明谁的命令输出

来自分类Dev

顶部命令输出说明(在嵌入式系统中)

来自分类Dev

在 Django 中处理命令参数

来自分类Dev

Django 中的不同命令

来自分类Dev

从 Django 管理命令中显示命令的帮助

来自分类Dev

django post_migrate信号问题

来自分类Dev

Django Makemigrations和Migrate不断重复

来自分类Dev

Artisan migrate 命令没有输出

来自分类Dev

Doctrine generate/migrate 命令不制作表格

来自分类Dev

在Django管理命令中读取文件

来自分类Dev

Django的Core Migrate工具与South进行Django数据迁移的对比

来自分类Dev

如何使用grep命令从语义发布输出中获取发布说明

来自分类Dev

如何使用vim命令字符在帮助文件中查找说明

来自分类Dev

在VS2010中使用命令行说明

来自分类Dev

在第四列的输出中说明谁命令的“:0”值

来自分类Dev

ss命令输出说明(进程描述中的第三个数字)

来自分类Dev

终端中的 MAC 地址显示和用于请求详细说明输出的命令

来自分类Dev

Django教程-模型说明

来自分类Dev

Migrate :: install在laravel中不起作用

来自分类Dev

Migrate :: install在laravel中不起作用

来自分类Dev

Django Migrate-将charfield更改为datetimefield

来自分类Dev

Django migrate 尝试连接到非默认数据库

来自分类Dev

chcon命令的说明

来自分类Dev

fvctl命令的说明?