摘要
- 首先,我服那些说删库的人,解决问题非要删库?
- 其次,我更服那些复制粘贴说删库的人,天天删库删库你的良心不会痛吗?
- 再次,bai度爬虫的算法还是那么不尽人意,真的很难把握用户的意图。
问题描述:
遇到这个问题是因为我在改变用户所用模型类基类的之前生成了迁移文件和迁移表。
所以在配置AUTH_USER_MODEL = "users.UserProfile"
后出现了迁移文件可以生成但是迁移表无法生成的错误信息。
问题详情:
django.db.migrations.exceptions.InconsistentMigrationHistory: Migration admin.0001_initial is applied before its dependency users.0001_initial on database 'default'.
问题解决:
仔细看这个错误就会发现一个关键点:admin.0001_
,这像什么?在发现这个关键点之后,我还想到确实成功的生成迁移文件了,那么就极有可能是admin默认生成的迁移表出现了问题,所以**我尝试把admin对应的迁移文件删除(不包括__init__.py文件)**后,在生产迁移表就不会报错了。
考虑到可能有朋友找不到该文件的目录,我将我的环境目录粘贴进来”
E:\Anaconda\envs\mxonline\Lib\site-packages\django\contrib\admin\migrations
补充一下mysql严格模式警告解决方法:
问题详情:WARNINGS: ?: (mysql.W002) MySQL Strict Mode is not set for database connection 'default'
解决方法:添加一个kv:'OPTIONS’
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'mxonline',
'USER':'root',
'PASSWORD':'123456',
'HOST': 'localhost',
'PORT': 3306,
'OPTIONS': {
'init_command': 'SET sql_mode="STRICT_TRANS_TABLES"',
'charset': 'utf8mb4'
}
}
}
如果想深入了解一下mysql的严格模式的话。参考:mysql严格模式
总结
- 别动不动就删库好吗?