如何解决这个Django错误“异常类型:OperationalError异常值:没有这样的表?”

时间:2010-05-16 19:07:19

标签: python django sqlite pinax

我终于安装了Django项目的所有要求(我认为!),我正在尝试在Mac上运行本地安装(OSX 10.4)。

我收到以下错误:

  

块引用   /的操作错误   没有这样的表:django_content_type
  请求方法:GET
  请求网址:http://127.0.0.1:8000/
  异常类型:OperationalError
  例外价值:
  没有这样的表:django_content_type
  例外位置:/Users/Diesel/Desktop/DjangoWork/pinax-ev/lib/python2.5/site-packages/django/db/backends/sqlite3/base.py
  在执行中,第170行   Python可执行文件:/ Users / Diesel / Desktop / DjangoWork / pinax-ev / bin / python
  Python版本:2.5.1

3 个答案:

答案 0 :(得分:9)

  • 您是否运行./manage.py syncdb来创建所有表格?
  • django.contrib.contenttypes中的INSTALLED_APPS中是否有settings.py

作为不太可能的第三种选择:

  • 您的项目/应用是否使用Django应用程序“South”?如果是这样,您还需要运行./manage.py migrate以确保创建所有表。

忘记任何这些项目都会导致无法生成ContentType的表格。

答案 1 :(得分:5)

使用django版本1.10,我必须执行:

python manage.py migrate --run-syncdb

答案 2 :(得分:0)

当您的表信息不在数据库中或与您现有的数据库存在冲突时,就会出现此错误。例如,您更改了数据库列名称或数据库名称。 以下步骤将帮助您摆脱此错误。

  1. 在文件“setting.py”中查找INSTALLED_APPS = [],您的应用名称必须在那里。例如:INSTALLED_APPS = ['app'/{你的应用名称用引号括起来}]

  2. 运行命令:

<块引用>

python manage.py makemigrations app (无论您的应用名称是什么-我的情况-“应用”)

<块引用>

python manage.py migrate

<块引用>

python manage.py runserver