如何解决视图不存在

时间:2012-10-02 07:11:52

标签: python django view

我是Django 1.4的新手并尝试我的第一个项目。可以创建应用程序:

./manage.py startapp APP_NAME

由Django在urls.py中识别如下:

(r'^home/$', 'APP_NAME.views.home'),

但是当我只在项目的根目录中创建APP_NAME.py文件时,并将urls.py文件更改为:

(r'^home/$', 'APP_NAME.home'),

调试页面告诉我ViewDoesNotExist。即使我将urls.py文件更改为(带有from ... import且没有单引号):

from APP_NAME import home
(r'^home/$', home),

它也不起作用。

如何解决?它很复杂,可以为每个视图文件创建APP。

2 个答案:

答案 0 :(得分:0)

您是否真的在'APP_NAME.__init__.py'中实施了家庭功能;如果没有,你的代码将无法工作,因为没有什么可以被称为

答案 1 :(得分:0)

python manage.py startapp news

在您创建的news目录中,有一个views.py。现在让我们添加一些内容:

from django.http import HttpResponse
def index(request):
    return HttpResponse("Hello")

现在在urls.py添加此内容:

(r'^news/$', 'news.index'),

启动devserver python manage.py runserver并将浏览器指向http://localhost:8000/news/

你应该看到“你好”。

现在,您可以添加news/views.py更多内容 - 例如detailsarchive等等。

还要确保在您要导入的每个目录中都有一个空的__init__.py文件。 如果app-directory中没有init-file,from app.views import something将无效。