Python Django url错误

Python Django url错误,python,django,url,frameworks,get,Python,Django,Url,Frameworks,Get,我是django新手,正在阅读一篇教程,其中有一个例子,但我认为这是一个旧的django版本,现在我使用的是django 1.4 views.py from django.http import HttpResponse import datetime def current_datetime(request): now = datetime.datetime.now() html = "<html><body>It is now %s.</

我是django新手,正在阅读一篇教程,其中有一个例子,但我认为这是一个旧的django版本,现在我使用的是django 1.4

views.py


 from django.http import HttpResponse
import datetime

def current_datetime(request):
    now = datetime.datetime.now()
    html = "<html><body>It is now %s.</body></html>" % now
    return HttpResponse(html)

def hours_ahead(request, offset):
    offset = int(offset)
    dt = datetime.datetime.now() + datetime.timedelta(hours=offset)
    html = "<html><body>In %s hour(s), it will be %s.</body></html>" % (offset, dt)
    return HttpResponse(html)

因此,我认为您应该提供一个字符串,而不是为该应用程序和给定处理程序导入视图模块,因此这应该适用于您的url.py

from django.conf.urls.defaults import *
from mysite.views import current_datetime, hours_ahead

urlpatterns = patterns('',
     (r'^time/$', 'mysite.views.current_datetime'),
     (r'^time/plus/\d{1,2}/$', 'mysite.views.hours_ahead'),

)

您的URL模式缺少括号,表示您希望捕获URL的偏移量。尝试将其更改为以下内容:

(r'^time/plus/(\d{1,2})/$', hours_ahead),
通常,人们更喜欢在URL模式中使用。在您的情况下,URL模式将更改为:

(r'^time/plus/(?P<offset>\d{1,2})/$', hours_ahead),
(r'^time/plus/(?P\d{1,2})/$,提前几个小时),

那么问题是什么?
(r'^time/plus/(?P<offset>\d{1,2})/$', hours_ahead),