python - 如何将 South 重新引入我的 Django 项目?

标签 python django postgresql django-south reinstall

我处于新手编码员的经典位置,事后看来,如果我重新开始我的项目,我会做很多不同的事情。我在项目中相对较早地使用了 South,由于缺乏知识而遇到了一些问题,然后放弃了它,将其从已安装的应用程序中删除,并同步了数据库。然后我学习了足够的 SQL 来进行我需要的基本更改,并且此后进行了许多小的更改。

我想在 South 再次尝试一下,看看是否可以重新组织我的代码以反射(reflect)更好的编码实践。我在 stackoverflow 的帮助下搜索了 South 站点,并找到了创建者提供的指南,用于删除 South 的所有痕迹并重新开始 - 从已安装的应用程序中删除,使用 manage.py 工具重置数据库中的 South 表,并递归删除migrations子目录。但是,即使我已经很长时间没有使用南了(它没有出现在我安装的应用程序中),这仍然使我的数据库处于非功能状态——不太清楚为什么,因为我没有收到任何错误消息。

任何人都可以向数据库新手解释一下南方会对我的数据库产生什么挥之不去的影响吗?

最佳答案

South 在您的数据库中创建一个表来跟踪已应用的迁移。该表是south_migrationhistory。您可能想要删除该表(并重新同步您的数据库)或删除其内容。

我想目前南方认为它已经应用了迁移,但它没有,这可能会让人感到困惑。

关于python - 如何将 South 重新引入我的 Django 项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5715320/

相关文章:

python - Django TypeError 对象不可迭代

python - 获取 Django 应用程序中的所有表名

mysql - 使用 Perl 和 PostgreSQL 保存复选框选项

python-3.x - 将可变长度数组写入数据库

python - 抓取字符串中 '\id' 之后的第一个单词

python : Select text between angle brackets

python - 使用 Pandas 替换不同列的元素

python - 如何模拟我无法访问的对象属性?

python - 为什么没有像主应用程序那样将自定义 url 转换器添加到蓝图的选项?

sql - 如何将变量连接到postgresql中的其他变量?