以下是我的代码中指定的网址格式。
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
这实质上意味着请求被发送到错误的功能。调试之后,我意识到该功能进入了详细功能。
请让我知道为什么会这样。
谢谢!
答案 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