Python Django-ImportError:没有名为city的模块
Django一直告诉我这一点,即使在重新编码了所有内容之后,我似乎无法在谷歌上找到帮助。项目文件夹如下:Python Django-ImportError:没有名为city的模块,python,django,linux,importerror,Python,Django,Linux,Importerror,Django一直告诉我这一点,即使在重新编码了所有内容之后,我似乎无法在谷歌上找到帮助。项目文件夹如下: $ tree . |-- project | |-- __init__.py | |-- __init__.pyc | |-- settings.py | |-- settings.py~ | |-- settings.pyc | |-- urls.py | |-- urls.pyc | |-- wsgi.py | `-- wsgi.pyc |-- cit
$ tree
.
|-- project
| |-- __init__.py
| |-- __init__.pyc
| |-- settings.py
| |-- settings.py~
| |-- settings.pyc
| |-- urls.py
| |-- urls.pyc
| |-- wsgi.py
| `-- wsgi.pyc
|-- city
| |-- __init__.py
| |-- __init__.pyc
| |-- models.py
| |-- models.pyc
| |-- tests.py
| `-- views.py
|-- course
| |-- __init__.py
| |-- __init__.pyc
| |-- models.py
| |-- models.pyc
| |-- tests.py
| `-- views.py
|-- manage.py
|-- perk
| |-- __init__.py
| |-- __init__.pyc
| |-- models.py
| |-- models.pyc
| |-- static
| |-- tests.py
| `-- views.py
|-- preuniversity
| |-- __init__.py
| |-- __init__.pyc
| |-- models.py
| |-- models.py~
| |-- models.pyc
| |-- tests.py
| `-- views.py
`-- user
|-- __init__.py
|-- __init__.pyc
|-- models.py
|-- models.py~
|-- models.pyc
|-- tests.py
`-- views.py
结构没有更改,除了models.py之外,我也没有修改任何内容,它是:
$ cat city/models.py
from django.db import models
class State(models.Model):
acronym = models.CharField(max_length=2)
name = models.CharField(max_length=32)
class City(models.Model):
name = models.CharField(max_length=32)
state = models.ForeignKey(State)
我只是在学习Django教程,不多也不少,没有解决方案。我在每个应用程序上都使用startapp(而不是从另一个应用程序复制粘贴),并且应用程序名称都在settings.py中
如果我删除对城市的所有引用(外键、导入和从已安装的应用程序中删除),它会抱怨下一个应用程序(课程)。将您的城市(要导入的文件)放在主应用程序的根目录中。
如果IDE(例如PyCharm)不担心导入这个模块,那么问题就出在路径上
我立刻解决了这个问题。问题路径是。我假设您正在使用django 1.4或更高版本,因为您的项目文件夹中有什么
您是否使用
django-admin.py startproject
创建了顶级目录?我看不到顶层的\uu init\uuuuuuuuuupy.py
文件,尽管带有settings.py
和url.py
的project
目录在那里。在顶层(manage.py的同级)创建一个名为\uuuu init\uuuu.py
的空文件,看看这是否有帮助。因此我设法修复了错误。也许我忘记了关于这个问题的一些重要信息,但以下是解释:
我下载了用于Eclipse的PyDev,并从头开始重建了该项目。因此,当我编写导入时,Eclipse抱怨它不正确。嗯,我回到了Django教程,那里有导入城市
,所以我是对的。我接受了Eclipse的建议,并将其从city改为。模型导入city
,一切正常。因此,我对旧项目进行了测试,并更改了每个导入,它进行了验证和同步,没有出现任何错误
现在我很困惑,Django文档怎么会错呢?或者这是Python版本或发行版的特点?好了,没关系,它正在工作。谢谢大家:P您的
城市
很可能不在路径中。能否显示您的manage.py
文件?或者,将city
移动到project
文件夹中(路径中提供了projects/
),您在哪个模块中导入city/models.py.。它在您的views@karthikr我不确定它是否有用,manage.py是默认值,但无论如何:@user1050619我真的不明白你的评论…你是说你从安装的应用程序中删除了实例到city
?我不使用IDE,我只使用terminal和gedit。城市目录已经在根目录上(使用manage.py的目录?)是的,我有,没有,它没有更改任何内容。请显示您的settings.py。另外,您是使用开发服务器(runserver)还是使用apache之类的web服务器运行django?真的不需要。我设法修好了,很快就会回答。