问题标签 [django-3.2]

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 投票
2 回答
558 浏览

python-3.x - Django:如何找到哪个 CHECK 约束失败

我正在使用 django 3. sqlite 数据库。我有一种情况,其中一个模型中的实例无法保存。我收到一个完整性错误和“CHECK 约束失败”,然后是我的模型名称(我的“press”应用程序中的“post”:press_post)。我已经查过了,我想这意味着我的一个字段的值是不可能的?如果有人可以更准确和准确地解释它的含义,那将很有帮助。大多数情况下,我想知道如何找出哪个检查约束失败,以便我可以修复它(模型中的哪个字段或哪条数据导致问题)。模型中的其他实例保存没有任何问题,而其他一些实例与此实例有相同的问题。

我可以访问 shell_plus 中的实例并查看数据。看起来不错......但显然我错过了一些东西。

错误输出:

这是[编辑:简化]模型(仅包括导致问题的字段)

这是[编辑:简化]覆盖的保存功能。

[编辑]

我从有用的评论中意识到问题出在我的自定义保存功能中,我在其中更新了两个字段。Check 约束失败,因为在某些情况下,我要求为这些 JSONFields 设置一些不允许的内容:使用 numpy (np.nan) 的 nan 值

这是代码的相关(攻击性)部分:我的模型的 get_alts 方法。

对于“上下文”不在detailed_alts 字典中的实例,我无法保存对实例的更改,因为我已将值设置为np.nan,我猜这在JSONField 中是不允许的。将 np.nan 更改为 'NaN' 解决了这个问题。

至于这是如何解决的,我只需要尝试注释掉保存功能的部分内容,直到找到导致保存失败的部分。然后我测试了保存功能中的每一行,但在尝试保存之前从未出错。因此,不知何故,我突然意识到问题可能出在 jsonfield 上,因为我之前在序列化日期时遇到过问题。

0 投票
1 回答
329 浏览

django - "django.core.exceptions.ValidationError: ['"post_id" is not a valid UUID.']" 看似有效的 UUID

这是我正在创建的一个简单的博客应用程序。我有一个模型可以创建一篇文章并为每篇文章生成一个 UUID。这按预期工作。

我现在正在尝试从我的模型“Post”中创建一个包含“post_id”对象的视图变量,以便以后可以将此变量插入到我的 html 模板中。令人困惑的是,我知道 Post 模型生成了一个有效的 UUID(至少我对 UUID 的理解),因为我已经看到它生成了,所以我不清楚从哪里开始寻找解决这个问题。网上的其他类似问题似乎与我的问题无关。

我的应用程序/views.py

我的应用程序/模型.py

返回的错误

此外,如果它很有价值 - 添加 post_id 对象时的最新迁移文件。

myapp/migrations/0002_auto_20210830_1450.py

0 投票
0 回答
124 浏览

python - Django(2.1.1 版)升级到 Django(3.2 版)后管理面板更改

我做了什么?

我在 Ubuntu 18.04 服务器上从 Django(版本 3.2)升级了 Django(版本 2.1.1)

我期望会发生什么?

我期待相同的管理面板,但得到了不同的管理面板。正如您在屏幕截图中看到的 操作系统:Ubuntu 18.04.4 LTS (GNU/Linux 5.4.0-1048-aws x86_64)

Python:Python 3.6.9(默认,2021 年 1 月 26 日,15:33:00)

0 投票
1 回答
338 浏览

python - AttributeError:“_UnixSelectorEventLoop”对象没有属性“_signal_handlers”

我一直在将我们的 Django/Python 应用程序升级到 Python 3.9.7 和 Django 3.2.7(从 Python 3.5 和 Django 1.11.23)。

目前,如果我尝试运行python manage.py createsuperuser

我收到以下错误

这些是我在 requirements.txt 中使用的一些版本

当我运行服务器时,这似乎也发生了,然后再次终止服务器。任何想法可能导致问题?

0 投票
0 回答
85 浏览

django - Django:无法加载模型 - NOT NULL 约束失败

你们好吗?

我们无法将fixtures 数据插入到我们的SQLite3 数据库中。

我们使用 UUid 作为我们的模型 ID。

使用命令 python.exe .\manage.py loaddata start.json

模型

开始.json

错误

安装夹具“C:...fixtures\start.json”时出现问题:无法加载 app.Estadual(pk=59472bb0-7f6e-4026-a900-727b7cdd647f):NOT NULL 约束失败:app_estadual.created

0 投票
1 回答
128 浏览

python - 将具有 None 值的关键字参数返回到 django 3.2 中的视图

根据Django 3 更改日志

RegexPattern,由 使用re_path(),不再返回关键字参数,其None值将传递给缺少的可选命名组的视图。

最近从 Django 2.2 升级到 3.2,之后我遇到了一个问题,我怀疑上面提到的更新日志。

问题是当KeyError访问get_context_data(...)使用re_path().

仅供参考,只是为了验证我回滚到 Django 2.2 并检查视图中的上下文数据,并且可以看到字典中所需的Key设置为self.kwargsNone

有没有办法将具有 None 值的关键字参数返回到Django 3.2中的视图?

0 投票
0 回答
15 浏览

python - makemigration 后只出现 2 列

问题详情

运行此命令后,迁移文件中仅出现 2 列。该表尚未出现在数据库中。

我错过了什么吗?如果您需要更多信息,请告诉我。

迁移表

model.py 文件中的代码,

0 投票
2 回答
109 浏览

python - AutoField 没有减少列的长度

我正在尝试为像 int(3) 这样的小整数创建自动增量字段。

如果我尝试AutoField,它会生成 11 的长度。如果我使用max_length,迁移会忽略它。

SmallIntegerField给出不自动递增的 int(6)。

我的模型定义:

0 投票
1 回答
26 浏览

python - Django3.2 python迁移未设置默认值

我的数据库是 MySQL。我正在尝试将默认值设置为迁移代码中的 created_at 字段下方的当前日期时间。由于某些原因,默认值在数据库端不显示任何内容,同样,is_Active 也有同样的问题。我错过了什么吗?

我的意思是,两种情况下的默认值都是空白的。你能建议吗?

方法一

方法二

0 投票
1 回答
102 浏览

python - 在迁移文件中找不到表

错误信息

django.db.utils.OperationalError:没有这样的表:clientauth_tbltokentypes

我想要做什么

我正在尝试使用表生成迁移数据。

模型.py

我运行了python manage.py makemigrations创建文件 0001_initial.py 的命令。

然后在迁移文件中,我添加了管理器:

我错过了什么吗?