gpt4 book ai didi

mysql - 如何解决 django.db.utils.IntegrityError : (1364, "Field ' name' doesn't have a default value")

转载 作者:行者123 更新时间:2023-12-05 03:03:22 25 4
gpt4 key购买 nike

我在尝试为我的 Django 项目创建 super 用户时遇到此错误。不确定哪个表的“名称”列需要默认值。

在为我的 Django 项目成功创建迁移后,我运行 python manage.py createsuperuser 来创建 super 用户并得到以下错误:django.db.utils.IntegrityError:(1364,“字段‘name’没有默认值”)。我在 OSX 上使用自制软件安装了 mysql (8.0),并在虚拟环境中使用了 python 3。

我不确定上面的命令尝试使用哪个数据库,更不用说哪个表了。无论如何,我已经遍历了数据库中与我的项目相关的所有表以及 mysql 数据库中的所有表,并在找到的唯一名称列上运行了此命令:

ALTER TABLE django_migrations ALTER COLUMN name SET DEFAULT '-'

但我仍然收到此错误。我已经阅读了 Django 文档中关于 createsuperuser 的内容,并查看了一些 Django 代码,但对解决这个问题的值(value)很小。如有任何帮助,我们将不胜感激。

最佳答案

尝试:

ALTER TABLE django_content_type MODIFY COLUMN name character varying(50) NOT NULL DEFAULT 'not null';

或者如果您希望它为空:

ALTER TABLE django_content_type MODIFY COLUMN name character varying(50) NOT NULL DEFAULT '';

取自此处:https://github.com/arteria/django-background-tasks/issues/139

关于mysql - 如何解决 django.db.utils.IntegrityError : (1364, "Field ' name' doesn't have a default value"),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54149866/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com