Django导入models.py使列表索引超出范围

时间:2014-02-21 04:32:26

标签: python django django-models

当我的项目的子文件夹(包含我的settings.py和models.py的子文件夹)中的python终端中时,我执行以下操作:

import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "settings")
from models import *

我收到以下错误:

/usr/local/lib/python2.7/dist-packages/django/db/models/base.pyc in __new__(cls, name, bases, attrs)
     90             # For 'django.contrib.sites.models', this would be 'sites'.
     91             model_module = sys.modules[new_class.__module__]
---> 92             kwargs = {"app_label": model_module.__name__.split('.')[-2]}
     93         else:
     94             kwargs = {}

IndexError: list index out of range

这与Defining a model class in Django shell fails中看到的错误相同,但在这里我有项目中定义的模型。 有什么问题?

1 个答案:

答案 0 :(得分:0)

问题是必须从django项目的根目录运行import(以及因此python shell)。否则,django没有模块名称,它是数据库路径的一部分。