统一解决 "Failed to open the referenced table 'v_user'",python manage.py migrate 出现的问题
Closed this issue · 0 comments
如果执行python manage.py makemigrations
发现No changes detected
然而并没有migrations文件夹
应该执行
python manage.py makemigrations users video myadmin comment
再执行
python manage.py migrate
相当于手动指定好所有app进行makemigrations。
出现"Failed to open the referenced table 'v_user'"报错是因为没有migrations文件夹,只能执行django的默认migrations:C:\Users***.conda\envs\django\Lib\site-packages\django\contrib\admin\migrations,其中有这三个
0001_initial.py
0002_logentry_remove_auto_add.py
0003_logentry_add_action_flag_choices.py
其中0001_initial.py有一个外键
('user', models.ForeignKey(
to=settings.AUTH_USER_MODEL,
on_delete=models.CASCADE,
verbose_name='user',
)),
但user表还没建,因此发生冲突。
奇怪的是settings明明加载了app,为什么还得手动指定?了解的可以下面回复下。
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.contrib.humanize',
'sorl.thumbnail',
'chunked_upload',
'video',
'users',
'myadmin',
'comment',
]