问题标签 [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 投票
4 回答
22286 浏览

python - Django 1.7 - 应用程序'your_app_name'没有迁移

我正在尝试从 Django 1.6.7 升级到 Django 1.7.1,所以我一直在尝试迁移我的应用程序。

我在这里关注了 django 文档

我从已安装的应用程序中删除了南。

在迁移目录中,我删除了编号的迁移文件和 .pyc 文件,但我保留了目录和 __init__.py 文件。

然后我运行:

我收到以下确认消息:

接下来我运行:

我收到以下错误:

根据文档,我还运行了:

我收到了同样的错误信息:

谁能解释为什么这对我不起作用?

0 投票
2 回答
29685 浏览

python - Django 1.7 空白 CharField/TextField 约定

使用 Django 的新迁移框架,假设我在数据库中已经存在以下模型:

我现在想在模型中添加一个新的 TextField,它看起来像这样:

当我尝试使用 迁移此模型python manage.py makemigrations时,我收到以下提示:

null=True我可以通过添加to轻松解决此问题field_2,但 Django 的约定是避免在基于字符串的字段上使用 null,例如 CharField 和 TextField(来自https://docs.djangoproject.com/en/dev/ref/models/fields/)。这是一个错误,还是我误解了文档?

0 投票
2 回答
1967 浏览

python - 我的旧项目出现 Django 1.7 迁移问题

我有一个 django 1.5 应用程序,现在我将它迁移到 django 1.7 并且应用程序在旧数据库上运行良好。但现在我想使用 django 1.7 为该应用程序创建迁移。

我删除了旧的迁移,只保留了带有 __ init__ 文件的迁移文件夹

然后我跑了./manage.py makemigrations

在运行./manage.py migrate它时会出现一些错误。

我已将 django_sites 添加到已安装的应用程序中。

更新到本机迁移时,是否有任何特定的方式来创建/应用迁移?

0 投票
1 回答
1064 浏览

python - 迁移过程中出错

我在将模型迁移到数据库时遇到问题。

模型.py:

这是错误日志:

我是 Django 的初学者,没有太多经验。谁能说我,我做错了什么?错误在哪里?我试着在过去的两个小时里找到它,什么也没有。

这是不起作用的迁移:

0 投票
0 回答
222 浏览

python - 如何使用 sqlite3 在 django 中迁移数据

在遵循 django 网页上的官方步骤后,我不断收到此错误:

返回 Database.Cursor.execute(self, query, params)

django.db.utils.OperationalError:数据库被锁定

我的问题是我正在尝试将数据从旧列迁移到新列:

0 投票
1 回答
1027 浏览

django - 如何使用迁移将外键替换为另一个

我想用指向配置文件模型的指向替换现有的ForeignKey指向我的用户模型。

模型的变化是:

至:

自动生成的迁移看起来像(带有常量):

我也ManyToManyFields得应付。我脑子里想的是我想要一个在每个模型对象上运行的函数,以将用户对象解析为配置文件对象。我该怎么做呢?

用户和个人资料之间的关系是(反之亦然):

编辑:忘了提,如果运行自动生成的迁移,您会收到以下错误:

0 投票
0 回答
188 浏览

django - 为什么 Django 1.7 为其他应用程序运行迁移?

我已经在我的一个应用程序中创建了一个新的迁移,实际上我现在已经创建了 2 个迁移而没有提交。我想将这两个合并为一个迁移,因为它们都与我正在处理的当前功能相关。但是,我似乎无法在客户应用程序中从 0002 反向迁移回 0001,因为 Django 继续进行取消迁移并开始取消迁移似乎是我所有的应用程序!它似乎不在依赖列表中,所以我不确定它为什么会变得疯狂。还有人看到这个吗?

迁移列表:(应用程序目前所在的位置)

我发出的命令进入沟渠:

客户迁移 0002 依赖项:

另一个应用程序迁移依赖项:(由于某种原因正在取消迁移此应用程序和其他应用程序)

0 投票
2 回答
962 浏览

django - 为什么模型中的 FileField 需要默认值?

我正在使用 Django,我正在尝试创建一个文件上传器并在模型中有各种 FileField。当我尝试做的时候,

它提示为 FileFields 设置默认值,为什么它很重要?它说它是一个不可为空的字段,但为什么它不能为空呢?

0 投票
3 回答
2756 浏览

python - Django 1.7.1 需要字段的默认值 - 但数据库中没有条目。为什么?

我遇到了一个奇怪的问题。我在 Mac OS X Yosemite 上使用 Django 1.7.1,并且我已经配置了一个本地 MySQL 数据库。

通常,我创建一个模型,如果我想添加另一个字段,我只需做一个./manage.py migrate,Django 创建一个新的数据库列。

我正是这样做的。这是我的模型:

请注意,我已经添加了字段price_monthly。然后,我做了一个./manage.py migrate

好吧,我做了一个./manage.py makemigrations,结果是:

这里奇怪的是,这个模型还没有条目。那么,如果数据库中没有产品,我为什么需要提供默认值呢?

我开始拔头发,昨天我尝试了几件事。3个小时后,我放弃了。

0 投票
0 回答
586 浏览

django - 涉及 RenameModel 的 Django 迁移不起作用

我已经成功地在 Django 1.7 中使用makemigrationsandmigrate来更改、添加和删除字段。不幸的是,我在尝试重命名中间模型时无法正常工作。即我有两个模型A和B,通过模型X通过多对多字段链接,我想将X重命名为Y。

运行manage.py makemigrations不会检测到重命名,而是删除 X 并添加 Y。但这不是问题。我将 Django 的自动生成脚本替换为:

这给了我以下错误:

ValueError: Lookup failed for model referenced by field b: X

所以我猜它正在与包含模型旧名称的“通过”关系作斗争。我尝试添加一个迁移命令来更改该关系,将其更新为中间模型的新名称,但这也无济于事。