我的 SQLite 数据库无法识别:"no such table myapp_onemodel"
My SQLite database is not recognized : "no such table myapp_onemodel"
我已经在 VPS(Ubuntu12.04、Apache2.2)和 mod_wsgi 上用 Python 3 建立了一个 Django 网站 (1.7.3)。
尝试进入涉及数据库的我的网站页面时出现以下错误:
OperationalError at /myapp/
no such table: myapp_category
Request Method:GET
Request URL: http://mywebsite.com/myapp/
Django Version: 1.7
Exception Type: OperationalError
Exception Value: no such table: myapp_category
Exception Location: /opt/.virtualenvs/mysite_env/lib/python3.2/site-packages/django/db/backends/sqlite3/base.py in execute, line 485
Python Executable: /usr/bin/python
Python Version:3.2.3
Python Path: ['/opt/.virtualenvs/mysite_env/lib/python3.2/site-packages/distribute-0.6.24-py3.2.egg',
'/opt/.virtualenvs/mysite_env/lib/python3.2/site-packages/pip-1.1-py3.2.egg',
'/var/www/mywebsite',
'/opt/.virtualenvs/mysite_env/lib/python3.2/site-packages',
'/usr/lib/python3.2',
'/usr/lib/python3.2/plat-linux2',
'/usr/lib/python3.2/lib-dynload',
'/usr/local/lib/python3.2/dist-packages',
'/usr/lib/python3/dist-packages']
我的服务器上关于数据库的 settings.py 如下:
import os
BASE_DIR = os.path.dirname(os.path.dirname(__file__))
DATABASES = {
'default':{
'ENGINE': 'django.db.backends.sqlite3',
'NAME': 'mydatabase',
}
}
- 我 运行
python manage.py makemigrations myapp
(我的网站上只有一个应用程序)并且 python manage.py migrate
成功。 (我还删除了 migrations/ 文件夹和 mydatabase 文件,并重新开始执行前两个命令 运行 迁移,也成功了)。
- 我检查了 'mydatabase' 文件是否存在。
- 我对
mydatabase
文件设置了正确的权限。
但是错误依旧,好像数据库不存在一样。
如有任何帮助,我们将不胜感激!
您的 WSGI 应用的当前目录与您的项目目录不同。将 home
参数添加到您的 WSGIDaemonProcess
描述
我已经在 VPS(Ubuntu12.04、Apache2.2)和 mod_wsgi 上用 Python 3 建立了一个 Django 网站 (1.7.3)。 尝试进入涉及数据库的我的网站页面时出现以下错误:
OperationalError at /myapp/
no such table: myapp_category
Request Method:GET
Request URL: http://mywebsite.com/myapp/
Django Version: 1.7
Exception Type: OperationalError
Exception Value: no such table: myapp_category
Exception Location: /opt/.virtualenvs/mysite_env/lib/python3.2/site-packages/django/db/backends/sqlite3/base.py in execute, line 485
Python Executable: /usr/bin/python
Python Version:3.2.3
Python Path: ['/opt/.virtualenvs/mysite_env/lib/python3.2/site-packages/distribute-0.6.24-py3.2.egg',
'/opt/.virtualenvs/mysite_env/lib/python3.2/site-packages/pip-1.1-py3.2.egg',
'/var/www/mywebsite',
'/opt/.virtualenvs/mysite_env/lib/python3.2/site-packages',
'/usr/lib/python3.2',
'/usr/lib/python3.2/plat-linux2',
'/usr/lib/python3.2/lib-dynload',
'/usr/local/lib/python3.2/dist-packages',
'/usr/lib/python3/dist-packages']
我的服务器上关于数据库的 settings.py 如下:
import os
BASE_DIR = os.path.dirname(os.path.dirname(__file__))
DATABASES = {
'default':{
'ENGINE': 'django.db.backends.sqlite3',
'NAME': 'mydatabase',
}
}
- 我 运行
python manage.py makemigrations myapp
(我的网站上只有一个应用程序)并且python manage.py migrate
成功。 (我还删除了 migrations/ 文件夹和 mydatabase 文件,并重新开始执行前两个命令 运行 迁移,也成功了)。 - 我检查了 'mydatabase' 文件是否存在。
- 我对
mydatabase
文件设置了正确的权限。 但是错误依旧,好像数据库不存在一样。
如有任何帮助,我们将不胜感激!
您的 WSGI 应用的当前目录与您的项目目录不同。将 home
参数添加到您的 WSGIDaemonProcess
描述