问题标签 [django-migrations]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
15857 浏览

django - 使用迁移向 Django 中的模型字段添加索引

我正在尝试为Field.db_index具有迁移的应用程序添加模型字段的索引。查看Django 的文档,我需要做的就是设置db_index=True

然后我首先尝试了新的 Django 的迁移:

但是Migration似乎没有注意到变化,也没有添加创建索引的sql命令。所以我尝试了这里django-admin.py的解释:

但这也不会打印 sql 命令,它会退出并出现以下错误:

0 投票
3 回答
4428 浏览

django-fixtures - Django Sites Framework:初始数据迁移位置

在 Django 1.7 之前,当使用Django Sites Framework时,可以/应该使用Initial Fixtures定义初始数据。

myproject/fixtures/initial_data.json

由于它是一个全局项目设置,我在项目根目录中添加了一个“fixtures”文件夹,并将其添加到 FIXTURE_DIRS。

现在,我使用的是 Django 1.7,建议使用migrations。引用 Django 文档:

要为您的项目设置正确的名称和域,您可以使用数据迁移。

问题是迁移是特定于应用程序的

python manage.py makemigrations --empty yourappname

那么,使用数据迁移将站点信息添加到我的项目的推荐方法是什么?这种迁移应该住在哪里?

运行python manage.py makemigrations --empty sites会在第三方应用程序文件夹中创建迁移,所以我们不希望这样。

不应该将 MIGRATION_DIRS 定义为初始数据存在的 FIXTURE_DIRS 吗?

我在设置文档中找到了MIGRATION_MODULES,但问题仍然存在,它是特定于应用程序的。

0 投票
2 回答
6190 浏览

django - 为什么 django 1.7 会为字段选择的变化创建迁移?

我在 1.7 版上观察到了这种行为,但在使用南迁移的以前版本中没有。

例如。

当我添加更多选项时:

并运行makemigrations,它为它创建了一个迁移,来自south后台我认为它应该说没有检测到更改,因为它不会影响数据库模式。我不知道它有什么用途:

0 投票
1 回答
1885 浏览

python - ValueError:在 draco.apps.home.models 中找不到函数 url

我只是扩展了我的用户模型,添加了用户、照片、电话、电子邮件等字段。当我使用“./manage.py makemigrations”命令在控制台中进行迁移时,我的问题出现了。完整的消息是:

这是我的“models.py”(我相信这个 .py 是错误的根源):

我是 django 和 python 的新手,如果我忽略了什么,请提前道歉。

谢谢!!

0 投票
2 回答
39521 浏览

django - django 1.7 迁移——如何清除所有迁移并从头开始?

所以我现在正在快速迭代一个 django 应用程序,并且我一直在调整 models.py。在一天或两天的编程和测试过程中,我生成了几十个迁移文件。有时我真的把模式拆开并完全重新做。这会导致迁移过程大量抱怨默认值和空值等。如果可能的话,我只是想暂缓所有迁移内容并重新开始迁移,因为我终于知道自己在做什么了。到目前为止,我的方法如下:

  1. 删除迁移文件夹中的所有内容,除了__init__.py.
  2. 进入我的 PostgreSQL 控制台并执行以下操作:DELETE FROM south_migrationhistory WHERE app_name='my_app';
  3. 在 PostgreSQL 控制台中,删除与 my_app 关联的所有表。
  4. 重新运行- 这会在我的迁移文件夹中./manage.py makemigrations my_app生成一个文件。0001_initial.py
  5. 运行./manage migrate my_app- 我希望这个命令能够重新构建我的所有表,但它却说:“没有要应用的迁移。”

是什么赋予了?

另外,south_migrationhistory既然我已经抛弃了 South 并切换到 Django 1.7,那么数据库表还在使用吗?

谢谢。

0 投票
3 回答
1247 浏览

django - 生成 UUID 的默认值会破坏 django 1.7 中的迁移,是否有解决方法?

Django 1.7 现在需要设置迁移。不幸的是,在默认字段值中使用 lambdas 或类似的东西会破坏这个过程。

我在模型中有以下内容:

调用 partial 会中断迁移过程,并出现以下错误:

我仍然需要自动生成 UUID,所以有人知道不会破坏迁移的解决方法吗?

0 投票
2 回答
6922 浏览

django - 更改模型以添加“通过”关系以订购多对多字段 - Django 1.7 迁移修改

我正在尝试向我不久前创建的 ManyToMany 字段添加订单。我基本上想在图片集中订购图片。我在 Django 1.7 上运行,所以不再向南迁移(我试图按照本教程进行操作:http: //mounirmesselmeni.github.io/2013/07/28/migrate-django-manytomany-field-to-manytomany-through -与南/

这是我拥有的“通过”关系:

因此,如果我不必迁移旧数据, 这应该可以工作(模型中唯一的区别是它没有through='CollectionPictures'

这是我的迁移:

迁移时会引发错误:

ValueError:无法将字段 business.Collection.pictures 更改为 business.Collection.pictures - 它们不是兼容的类型(您无法更改 M2M 字段或从 M2M 字段更改,或通过 = 在 M2M 字段上添加或删除)

是否有人已经尝试过使用新的 1.7 迁移进行这种操作?

谢谢 !

0 投票
1 回答
484 浏览

django - django 1.7 迁移:检测到更改而没有任何更改

makemigrationsdjango 1.7 中的命令如何检测更改?

我有一个问题,它总是告诉我我的一个领域有变化,而没有。当我运行该命令时,它只是一遍又一遍地写入相同的迁移文件而没有任何更改。

该字段是一个自定义字段,我在其上实现了 deconstruct 方法,并且有一些参数是对象,因此我使用了 deconstructible 装饰器。

我在 github 上创建了一个复制问题的项目:https ://github.com/YAmikep/django-testmigrations

我做错了什么?这是一个错误吗?

这是我跑的:

迁移文件 0002_auto_20141014_2123.py 和 0003_auto_20141014_2123.py 包含完全相同的操作:

0 投票
2 回答
5424 浏览

django - 使用 Django 1.7 创建部分索引

Django 1.7的文档RunSQL提到类可用于在表上创建部分索引。我有一张桌子,我希望title, blog&的组合category是独一无二的。但是,如果没有提供类别,标题和博客的组合仍然应该是唯一的。

我可以使用部分索引来实现这个约束(如下所示的 SQL)。如果我使用 Django 1.7 迁移,我应该在哪里添加此代码?

0 投票
4 回答
6086 浏览

django - Django 1.7 迁移

我正在使用 django 1.7,我刚刚添加了一个自定义用户模型。当我运行python3 manage.py makemigrations或者python3 manage.py migrate我得到错误:TypeError: __init__() got an unexpected keyword argument 'preserve_default'. 添加新的自定义用户模型后出现此问题。完整的回溯是: