我找到了几个具有此标题的主题,但它们的解决方案都不适合我。我的服务器上运行着两个 Django 站点,它们都是通过 Apache 在由我的 Nginx 前端(用于静态文件)提供的两个端口上使用不同的虚拟主机。一个站点使用 MySql 并且运行良好。另一个使用 Sqlite3 并在标题中获取错误。
我下载了一份sqlite.exe,查看mysite.sqlite3(该目录下的SQLite数据库)文件,确实有一个django_session表,里面有有效数据。我的 system32 中有 sqlite.exe,Python 路径中有 site-packages 文件夹。
这是我的 settings.py 文件的一部分:
MANAGERS = ADMINS
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'.
'NAME': 'mysite.sqlite3', # Or path to database file if using sqlite3.
'USER': '', # Not used with sqlite3.
'PASSWORD': '', # Not used with sqlite3.
'HOST': '', # Set to empty string for localhost. Not used with sqlite3.
'PORT': '', # Set to empty string for default. Not used with sqlite3.
}
}
我确实使用了 python manage.py syncdb,没有任何错误,只有一个“No Fixtures”评论。
有没有人知道这里还会发生什么?我正在考虑将所有内容都转移到我的老 friend MySql 而忽略 Sqlite,因为它确实总是给我带来一些麻烦。无论如何,我只是为了了解它而使用它。我没有压倒性的理由为什么要使用它。但同样,只是为了我的启发,有人知道这个问题是什么吗?我不想放弃。
最佳答案
对代码进行任何更改后,运行以下命令
manage.py makemigrations
manage.py migrate
它对我有用。
关于Django:没有这样的表:django_session,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3631556/