AttributeError:模块对象没有属性'index

1 投票
1 回答
7349 浏览
提问于 2025-04-18 11:06
from polls.views import index

我现在正在看Django官方文档上的教程,遇到了一个属性错误(AttributeError)。这是我正在使用的代码:

'polls'是我的应用程序的名字。

views.py

from django.http import HttpResponse

def index(request):
    return HttpResponse("Hello, world. You're at the poll index.")

\polls\urls.py

from django.conf.urls import patterns, url

from polls import views

urlpatterns = patterns('',
    url(r'^$', views.index, name='index')
)

urls.py

from django.conf.urls import patterns, include, url
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('',
    # Examples:
    # url(r'^$', 'mysite.views.home', name='home'),
    url(r'^blog/', include('Blog.urls')),
    url(r'^polls/', include('polls.urls')),
    url(r'^admin/', include(admin.site.urls)),
)

错误信息:

AttributeError at /polls

'module' object has no attribute 'index'

Request Method:     GET
Request URL:    http://localhost:8000/polls
Django Version:     1.6.5
Exception Type:     AttributeError
Exception Value:    

'module' object has no attribute 'index'

Exception Location:     C:\Users\manoj\Desktop\Django\mysite\polls\urls.py in <module>, line 6
Python Executable:  F:\Python 2.7\python.exe
Python Version:     2.7.5
Python Path:    

['C:\\Users\\manoj\\Desktop\\Django\\mysite',
 'F:\\Python 2.7\\lib\\site-packages\\pip-1.4.1-py2.7.egg',
 'C:\\Windows\\system32\\python27.zip',
 'F:\\Python 2.7\\DLLs',
 'F:\\Python 2.7\\lib',
 'F:\\Python 2.7\\lib\\plat-win',
 'F:\\Python 2.7\\lib\\lib-tk',
 'F:\\Python 2.7',
 'F:\\Python 2.7\\lib\\site-packages']

Server time:    Thu, 26 Jun 2014 04:44:51 +0530

我的代码有什么问题呢?


编辑 1:

我把这一行替换成了

from polls import views

但是现在我遇到了一个名称错误(NameError):

Exception Type:     NameError
Exception Value:    

name 'views' is not defined

在我的/polls/urls.py源代码的第六行:

from django.conf.urls import patterns, url

from polls.views import index

urlpatterns = patterns('',
    url(r'^$', views.index, name='index')
)

1 个回答

1

views.py 文件应该放在 polls/views.py 这个路径下。

from django.http import HttpResponse

def index(request):
    return HttpResponse("Hello, world. You're at the poll index.")

撰写回答