Django显示字符串不起作用

时间:2015-09-03 11:51:52

标签: python django

我正在通过Django

的手册

我设置了views.py:

from django.http import HttpResponse
from main.views import hello

def hello(request):
    return HttpResponse("Hello world")

该文件位于名为main的子文件夹中。

我设置了urls.py:

from django.conf.urls.defaults import patterns, include, url

urlpatterns = patterns('',
    url(r'^hello/$', hello),
)

当我要去:http://localhost:8000//main/hellohttp://localhost:8000/

我明白了:

  

未定义/ main / hello名称'hello'的NameError

但如果我将views.py更改为:

from django.conf.urls.defaults import patterns, include, url

urlpatterns = patterns('',
)

然后在http://http://localhost:8000/我看到了:

It worked!
Congratulations on your first Django-powered page.

我不明白我做错了什么。

这些是我的项目文件:

enter image description here

我该如何解决这个问题?

2 个答案:

答案 0 :(得分:3)

您必须在网址页面中导入视图。

from django.conf.urls.defaults import patterns, include, url
from main.views import hello

urlpatterns = patterns('',
    url(r'^hello/$', hello),
)

现在您可以通过以下方式访问它:

127.0.0.1:8000/hello

答案 1 :(得分:3)

您需要从hello导入views.py

urls.py将如下所示。

from django.conf.urls.defaults import patterns, include, url
from main.views import hello

urlpatterns = patterns('',
    url(r'^hello/$', hello),
)