我試圖通過爲yyyy/mm/dd格式的日期。它只接受月份是yyyy/mm。當我通過日期說它沒有找到頁面(404)。就像url weeklyreports/2011/03/22。無法通過日期在Django URL
這裏是我的url.py
url(r'^weeklyreports/(?P<year>\d{4})/(?P<month>\d{2})/(?P<day>\d+)/$', 'weeklyreports'),
我曾嘗試下面的網址也
url(r'^weeklyreports/\d{4}/\d{02}/\d{04}/$', 'weeklyreports'),
我的觀點weeklyreports.py
def weeklyreports(request, year = None, month = None, day = None):
today = datetime.date.today()
if year:
year = int(year)
month = int(month)
day = int(day)
today = datetime.date(year, month, day)
weekday = today.weekday()
start_delta = datetime.timedelta(days = weekday)
start_of_week = today - start_delta
week_dates = [start_of_week + datetime.timedelta(days=i) for i in range(7)]
previous_week = start_of_week - datetime.timedelta(7)
next_week = start_of_week + datetime.timedelta(7)
return render_to_response('template/weeklyreports.html', locals(),
context_instance = RequestContext(request))
這裏我的Template
enter code here
<a href="/myapp/weeklyreports/{{previous_week|date:"Y/m/d"}}"><img src="{{MEDIA_URL}}/img/previous.png"></a>
<b>Weekly Reports</b>
<a href="/myapp/weeklyreports/{{next_week|date:"Y/m/d"}}"><img src="{{MEDIA_URL}}/img/next.png"></a>
這段代碼有什麼問題?在此先感謝
模式r'^ weeklyreports /(\ d +)/(\ d +)/(\ d +)/ $'接受url:weeklyreports/2010/1/1 /因爲如果沒有,那麼別的東西可能不會錯顯示在你的代碼中。 – pyeleven 2011-03-22 06:30:11
請發佈整個urlconf – pyeleven 2011-03-22 07:58:22
它可能與尾部斜槓有關嗎?見[這裏](http://docs.djangoproject.com/en/1.2/ref/settings/#append-slash)和[here](http://morethanseven.net/2009/02/10/append-slashes -urls-django.html)。 – dgel 2011-03-22 08:01:37