Python Django-ImportError:没有名为city的模块

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

Django一直告诉我这一点,即使在重新编码了所有内容之后,我似乎无法在谷歌上找到帮助。项目文件夹如下:

$ 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?真的不需要。我设法修好了,很快就会回答。