Django Error ImportError at /无法导入名称模型

时间:2014-07-02 23:01:19

标签: python django apache mod-wsgi

我正在开发时没遇到这个问题,但是当我在centos 6上部署到apache 2.2时,我一直收到这个错误:

ImportError at /
no module named models
Request Method: GET
Django Version: 1.6.5
Exception Type: ImportError
Exception Value:    
cannot import name models
Exception Location: /var/www/quiz_app/proj/builder/views/my_quizzes.py in <module>,                line 5
Python Executable:  /usr/bin/python
Python Version: 2.6.6
Python Path:    
['/var/www/quiz_app/proj/builder',
'/var/www/quiz_app/proj',
'/usr/lib/python2.6/site-packages/setuptools-5.3-py2.6.egg',
'/usr/lib/python2.6/site-packages/pip-1.5.6-py2.6.egg',
'/usr/lib64/python26.zip',
'/usr/lib64/python2.6',
'/usr/lib64/python2.6/plat-linux2',
'/usr/lib64/python2.6/lib-tk',
'/usr/lib64/python2.6/lib-old',
'/usr/lib64/python2.6/lib-dynload',
'/usr/lib64/python2.6/site-packages',
'/usr/lib/python2.6/site-packages']

我正在使用Django 1.6.5和python 2.6我真的被困在这一个上,任何帮助都会非常感激!如果您需要任何其他信息,请告诉我。

提供错误的文件是名为my_quizzes.py

的视图
from django.contrib.auth.decorators import login_required  
from django.http import HttpResponseRedirect, HttpResponse, HttpResponseNotFound
from django.shortcuts import render
from builder import models as b 

我的httpd.conf文件如下所示:

WSGIScriptAlias / /var/www/quiz_app/proj/quiz/wsgi.py
WSGIPythonPath /var/www/quiz_app/proj/

<Directory /var/www/quiz_app/proj/\>
  <Files wsgi.py>
  Order deny,allow
  Allow from all
  </Files>
</Directory>

settings.py安装的应用程序看起来像

INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'homepage',
'administration',
'exam',
'builder',
)

如果这对任何人都有帮助,那么相关的树结构

|proj
|-builder
 |-__init__.py
 |-models.py
 |-views
  |-__init__.py
  |-my_quizzes.py (this is where the import error is occurring)

1 个答案:

答案 0 :(得分:1)

原来我的问题纯粹是一个路径问题。我仍然不完全理解为什么,如果有人想要添加更多细节,我很乐意在这里添加。

我试图在作为文件夹的视图中导入应用的模型文件。在这种情况下,该应用程序称为构建器。所以当我将表单构建器导入模型称为b时。我收到导入错误。为了解决这个问题,我将其更改为..导入模型为b。

奇怪的是,我可以导入其他应用程序模型(具有相同的文件组织),只需使用管理导入模型作为。只是应用程序中的视图无法直接导入模型文件。

感谢所有试图帮助的人!格雷厄姆的评论让我朝着正确的方向前进,弄清楚这里发生了什么。