当我的项目的子文件夹(包含我的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中看到的错误相同,但在这里我有项目中定义的模型。 有什么问题?
答案 0 :(得分:0)
问题是必须从django项目的根目录运行import(以及因此python shell)。否则,django没有模块名称,它是数据库路径的一部分。