相关疑难解决方法(0)

使用Django South重置迁移历史记录的建议方法是什么?

我使用South(0.7)和Django(1.1.2)积累了大量的迁移,这些迁移在我的单元测试中开始消耗相当多的时间.我想重置基线并开始一系列新的迁移.我查看了南方文档,完成了通常的Google/Stackoverflow搜索(例如"django south(重置或删除或删除)迁移历史记录")并且没有找到任何明显的内容.

我已经考虑过的一种方法是通过"删除"南方或"清除"历史记录(例如清除数据库表,从迁移控制器中删除迁移文件)来"重新开始",然后重新运行,

./manage.py schemamigration southtut --initial

所以,如果有人之前已经这样做并有一些提示/建议,他们将不胜感激.

django django-south

154
推荐指数
4
解决办法
6万
查看次数

如何简化Django 1.7中的迁移?

南方已有类似的问题,但我已经开始使用Django 1.7进行我的项目,而不是使用South.

在开发过程中,已经创建了许多迁移,但是软件尚未完成,并且不存在必须迁移的数据库.因此,我想重置迁移,就像我当前的模型是原始模型并重新创建所有数据库一样.

建议的方法是什么?

编辑:从Django 1.8开始,有一个名为squashmigrations的新命令,它或多或少地解决了这里描述的问题.

django-1.7 django-migrations

91
推荐指数
6
解决办法
9万
查看次数

Django 1.8:为现有模式创建初始迁移

我启动了一个使用迁移系统的django 1.8项目.
在某种程度上事情变得混乱,所以我从数据库中删除了迁移文件夹和表,现在我正在尝试重建它们,但没有成功.

我有三个应用程序(3个models.py文件),模型完全反映了表格!

到目前为止我发现的最佳方法是:

  1. 删除所有migrations文件夹.完成!
  2. django_migrations表中删除所有内容.完成!
  3. python manage.py makemigrations --empty <app>为每个应用运行.完成!
  4. python manage.py migrate --fake.完成!(虽然只有在每次makemigrations命令后运行它才有效.

现在我添加一个新字段,运行该makemigrations命令,我收到以下错误:
django.db.utils.OperationalError: (1054, "Unknown column 'accounts_plan.max_item_size' in 'field list'")

我一直在烧这个东西.我怎样才能初始化迁移,这样我每次都可以继续工作而不会发生迁移中断?

为什么这么复杂?为什么没有简单的单行:initiate_migrations_from_schema

编辑:
现在事情变得更加糟糕.我截断了django_migrations表并删除了所有migrations文件夹.
现在我尝试运行python manage.py migrate --fake-initial(我在DEV文档中找到的东西),这样就设置了所有Django的"内部"应用程序(auth,session等),我得到了:
(1054, "Unknown column 'name' in 'django_content_type'").
现在,这个"专栏"不是一个真正的专栏.它是@propertyDjango contenttypes应用程序中定义的.这里发生了什么?为什么将该name属性识别为真正的列?

django django-migrations

72
推荐指数
1
解决办法
5万
查看次数

什么是删除所有表的django命令?

是否有django命令

A.删除所有表格

B.删除所有表格中的所有数据

C.创建模型中定义的所有表格?

我现在找不到这些!

而命令我指的是那些小事情

runserver
Run Code Online (Sandbox Code Playgroud)

等等

django

28
推荐指数
3
解决办法
5万
查看次数

如何在Django中使用manage.py列出所有已安装的应用程序?

一些manage.py命令将Django应用程序作为参数.有时我想使用这些命令,但不记得应用程序的名称.有没有办法让manage.py提供这样的列表?

django

4
推荐指数
1
解决办法
5172
查看次数