1050, "Table 'django_content_type' already exists"

分析:这个报错的原因是,已经做过migration了,但django_migrations中并没有记录! 导出数据库时,这张表居然为空,导不出来,于是就有了这个问题。
解决:手动创建django_migrations表的记录,哪些有做过migration的,这张表就添加记录。
网上有人用python manage.py migrate --fake-initial来解决,但我看不行!


不知道从什么时候开始,我一修改django的数据库model,做python manage.py migrate时,就会报这个错!
让我无比苦恼!
django.db.utils.InternalError: (1054, "Unknown column 'name' in 'django_content_
type'")


实际上,在django中,有两张表极为重要:django_content_type,这个地方定义了django工程认可的app。这些app都是要进行migrate的对象。
还有一张表:django_migrations表,记录了django迁移的过程。
如下:
1 contenttypes 0001_initial 2017-12-19 17:53:03.261606
2 auth 0001_initial 2017-12-19 17:53:03.346684
3 admin 0001_initial 2017-12-19 17:53:03.373091
4 admin 0002_logentry_remove_auto_add 2017-12-19 17:53:03.384603
5 contenttypes 0002_remove_content_type_name 2017-12-19 17:53:03.414765
6 auth 0002_alter_permission_name_max_length 2017-12-19 17:53:03.424757
7 auth 0003_alter_user_email_max_length 2017-12-19 17:53:03.437770
8 auth 0004_alter_user_username_opts 2017-12-19 17:53:03.446892
9 auth 0005_alter_user_last_login_null 2017-12-19 17:53:03.461476
10 auth 0006_require_contenttypes_0002 2017-12-19 17:53:03.464332
11 auth 0007_alter_validators_add_error_messages 2017-12-19 17:53:03.473438
12 auth 0008_alter_user_username_max_length 2017-12-19 17:53:03.488165
13 call_center 0001_initial 2017-12-19 17:53:03.572816
14 cmm 0001_initial 2017-12-19 17:53:04.667065
15 sessions 0001_initial 2017-12-19 17:53:04.680216
16 call_center 0001_initial 2017-12-27 10:22:29.592507
17 call_center 0002_work_order_affiliated_customer 2017-12-27 10:22:31.255602
表中记录的这些迁移文件即使被删除了也无所谓。
我找到原来的表,手动copy过去(可以用ctrl+c 和ctrl+v)。这样django_migrations表就正确了。
以后做python manage.py makemigrations; python manage.py migrate都是可以的了!好开心!
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

草根大哥

进军大神程序员路上,谢谢支持!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值