geeeeeeeek / videoproject

基于python的视频点播网站,视频点播系统,python+Django开发的视频管理系统 - 毕业设计 - 课程设计
http://v.gitapp.cn
675 stars 242 forks source link

统一解决 "Failed to open the referenced table 'v_user'",python manage.py migrate 出现的问题 #34

Closed 2144533854 closed 11 months ago

2144533854 commented 1 year ago

如果执行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', ]