python - Django makemigrations 不创建管理数据库
问题描述
我有一个 django 项目,这是 settings.py 中已安装的应用程序条目:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'crawler',
]
当我运行python manage.py migrate
一切似乎都很好。但是当我尝试登录 django 管理页面时,它说
(1146,“表 'stock_db.django_session' 不存在”)
在我看来,这migrate
不是创建 django 管理数据库,但为什么呢?我什至尝试删除数据库,再次创建它并运行python manage.py makemigrations
,python manage.py migrate
它没有创建 django_session 表。
解决方案
始终确保在迁移之前运行makemigrations
首先使用以下命令运行迁移:
python manage.py makemigrations appname
python manage.py migrate
如果这不起作用,则使用删除当前迁移
Python manage.py squashmigrations
,然后重新运行迁移命令。
推荐阅读
- html - 仅在媒体屏幕中禁用浮动
- android - 用户以某种方式访问免费版中的专业版功能
- powerapps - MS Powerapps:Forall 与 Office365.SendEmail 结合使用
- javascript - 物化标签在 Laravel 中不起作用
- ios - 如何让 SnapKit 约束左右边缘?
- json - 是否可以使用 Python 在 JSON 中将日期写为 DateTime 格式而不将其转换为字符串
- python - Tensorflow: Tensor to numpy array conversion without running any session
- push-notification - 带有冒号 (:) 的 FCM 令牌在 Azure NH 中返回错误请求
- c++ - 按下一个产生中断的按钮即可调用多个函数
- java - Java Util SQL Parser 为正确的语句引发异常