首页 > 解决方案 > yoyo 迁移和 django 迁移有什么区别?

问题描述

有人可以解释一下yoyo迁移和django迁移之间的区别吗?为什么我们不能只使用 Django 中的内置迁移 using python manage.py migrate

我正在尝试将我的 Django 应用程序向前移动,但我们的 DevOps 团队说我们需要一个数据库迁移工具——特别是,他们推荐 yoyo,因为它像 Django 一样在 Python 中。但是,当 Django 具有内置迁移时,我很困惑为什么我们需要这个。我错过了什么?

不确定这是否重要,但我们使用的是 PostgreSQL 数据库。我们有一个组织范围的数据库,我们所有的表都存在于我们项目特定的模式中。

标签: djangodjango-migrations

解决方案


这完全取决于您的 DevOps 团队,使用 django 迁移或使用 yoyo 迁移不会有什么大的区别,Yoyo只是一个 Python 数据库模式迁移工具。

您将迁移编写为包含原始 SQL 语句或 Python 函数的 Python 脚本。django migrate 没有什么是你不能做的,但是有一些好处,或者我们应该说捷径可以更快更轻松地完成一些工作。Yoyo 通常作为命令行脚本调用,并提供一个命令行工具来读取此类脚本的目录并根据需要将它们应用到您的数据库中。我建议您阅读 yoyo 文档,当您阅读时,您会明白他们为什么对您这么说,这取决于您的 DevOps 团队,我认为他们这么说是因为它提供了管理迁移存储库和数据库选择的命令以及脚本版本控制


推荐阅读