请求在Django中执行错误的功能

时间:2016-12-04 04:55:23

标签: python django python-requests

以下是我的代码中指定的网址格式。

from . import views
from django.conf.urls import url

urlpatterns = [
url(r'^$', views.index, name='index'),
url(r'^(?P<uuid>[\w\-]+)/$', views.detail, name='detail'),
url(r'^layout/$', views.layout, name='layout'),
]

我有三个指定为

的函数
def detail(request,uuid) 
def index(request)
def layout(request):

但是,每当我输入'layout'关键字时,我都会收到以下错误:

Traceback:

File "C:\Python27\lib\site-packages\django\core\handlers\exception.py" in  inner
  39.             response = get_response(request)

File "C:\Python27\lib\site-packages\django\core\handlers\base.py" in _get_response
  187.  response = self.process_exception_by_middleware(e, request)

File "C:\Python27\lib\site-packages\django\core\handlers\base.py" in _get_response
  185.  response = wrapped_callback(request, *callback_args, **callback_kwargs)

File "C:\Users\Aditya Ranganath\PycharmProjects\untitled\untitled1\polls\views.py" in detail
  38.     path = Attribute[0]['Path']

Exception Type: IndexError at /polls/layout/
Exception Value: list index out of range

这实质上意味着请求被发送到错误的功能。调试之后,我意识到该功能进入了详细功能。

请让我知道为什么会这样。

谢谢!

1 个答案:

答案 0 :(得分:2)

试试这个:

urlpatterns = [
    url(r'^$', views.index, name='index'),
    url(r'^layout/$', views.layout, name='layout'),
    url(r'^(?P<uuid>[\w\-]+)/$', views.detail, name='detail'),

换句话说,在细节之前移动布局。因为详细信息上的正则表达式也可以与术语layout

匹配