【发布时间】:2012-02-05 01:09:13
【问题描述】:
最近我开始了一个小型 Django 项目,我使用 SQLite3 数据库和集成开发服务器在本地机器上开发该项目。我现在将整个项目复制到运行 Debian 的服务器上。
只要我继续使用 SQLite3 数据库,一切都运行良好。现在我想切换到本地 MySQL 数据库,所以我更改了项目根文件夹中的 settings.py 文件,创建了数据库并添加了一个用户。然后我运行了syncdb,它毫无问题地创建了所需的表。
现在我想使用该应用程序,但我不断收到错误,因为 Django 找不到表——既不是像 django_sessions 这样的“标准表”,也不是我自己的表——即使它们在那里(我检查了数据库)。
我得到的 DatabaseError 页面看起来很尴尬的一件事是以下行:
Exception Location: /usr/local/lib/python2.6/dist-packages/django/db/backends/sqlite3/base.py in execute, line 234
似乎 Django 仍在使用 SQLite3 后端,即使我将它设置为使用 MySQL 后端。
另一件几乎让我抓狂的事情是:我使用 rm 删除了我的应用程序根文件夹中的 data.sqlite 文件。但是当我使用我的应用程序时,正在重新创建文件!
谁能告诉我哪里出错了?
【问题讨论】:
-
你有settings.pyc文件吗?
-
是的,我已经删除了两次。但这并没有改变什么。
-
你有local_settings.py文件吗?
-
如果之前没有重启服务器,请尝试重启。
标签: python mysql django sqlite