Index: django/views/generic/date_based.py
===================================================================
--- django/views/generic/date_based.py	(revision 6861)
+++ django/views/generic/date_based.py	(working copy)
@@ -123,6 +123,8 @@
     model = queryset.model
     now = datetime.datetime.now()
 
+    lookup_kwargs = {'%s__month' % date_field: date.month}
+    date_list = queryset.filter(**lookup_kwargs).dates(date_field, 'day')
     # Calculate first and last day of month, for use in a date-range lookup.
     first_day = date.replace(day=1)
     if first_day.month == 12:
@@ -150,6 +152,7 @@
         template_name = "%s/%s_archive_month.html" % (model._meta.app_label, model._meta.object_name.lower())
     t = template_loader.get_template(template_name)
     c = RequestContext(request, {
+        'date_list': date_list,
         '%s_list' % template_object_name: object_list,
         'month': date,
         'next_month': next_month,
Index: django/contrib/databrowse/templates/databrowse/calendar_month.html
===================================================================
--- django/contrib/databrowse/templates/databrowse/calendar_month.html	(revision 6861)
+++ django/contrib/databrowse/templates/databrowse/calendar_month.html	(working copy)
@@ -6,11 +6,11 @@
 
 <div id="breadcrumbs"><a href="{{ root_url }}">Home</a> / <a href="{{ model.url }}">{{ model.verbose_name_plural|capfirst }}</a> / <a href="../../../">Calendars</a> / <a href="../../">By {{ field.verbose_name }}</a> / <a href="../">{{ month.year }}</a> / {{ month|date:"F" }}</div>
 
-<h1>{{ object_list.count }} {% if object_list.count|pluralize %}{{ model.verbose_name_plural|escape }}{% else %}{{ model.verbose_name|escape }}{% endif %} with {{ field.verbose_name }} on {{ day|date:"F Y" }}</h1>
+<h1>{{ object_list.count }} {% if object_list.count|pluralize %}{{ model.verbose_name_plural|escape }}{% else %}{{ model.verbose_name|escape }}{% endif %} with {{ field.verbose_name }} on {{ month|date:"F Y" }}</h1>
 
 <ul class="objectlist">
-{% for object in object_list %}
-<li class="{% cycle 'odd' 'even' %}"><a href="{{ object.url }}">{{ object|escape }}</a></li>
+{% for day in date_list %}
+<li class="{% cycle 'odd' 'even' %}"><a href="{{ day|date:"d"|lower }}/">{{ day|date }}</a></li>
 {% endfor %}
 </ul>
 
Index: tests/regressiontests/views/tests/generic/date_based.py
===================================================================
--- tests/regressiontests/views/tests/generic/date_based.py	(revision 6861)
+++ tests/regressiontests/views/tests/generic/date_based.py	(working copy)
@@ -67,5 +67,34 @@
         article.save() 
         response = self.client.get('/views/date_based/archive_month/2004/02/') 
         self.assertEqual(response.status_code, 404) 
-	         
-	 
\ No newline at end of file
+
+class DayArchiveTest(TestCase):
+    def test_archive_month_contains_day(self):
+        author = Author(name="Petryk Pyatochkin")
+        author.save()
+
+        article = Article(title="example", author=author)
+        article.date_created = datetime(2007, 11, 27, 0, 0, 1)
+        article.save()
+
+        response = self.client.get('/views/date_based/archive_month/2007/11/')
+        self.assertEqual(response.status_code, 200)
+
+        response = self.client.get('/views/date_based/archive_month/2007/12/')
+        self.assertEqual(response.status_code, 404)
+
+    def test_if_day_available(self):
+        author = Author(name="Mykola Salo")
+        author.save()
+
+        article = Article(title="example", author=author)
+        article.date_created = datetime(2007, 11, 27, 0, 0, 1)
+        article.save()
+
+        response = self.client.get('/views/date_based/archive_day/2007/11/27/')
+        self.assertEqual(response.status_code, 200)
+
+        response = self.client.get('/views/date_based/archive_day/2007/11/28/')
+        self.assertEqual(response.status_code, 404)
+        
+
Index: tests/regressiontests/views/urls.py
===================================================================
--- tests/regressiontests/views/urls.py	(revision 6861)
+++ tests/regressiontests/views/urls.py	(working copy)
@@ -35,7 +35,7 @@
     # Static views
     (r'^site_media/(?P<path>.*)$', 'django.views.static.serve', {'document_root': media_dir}),
     
-	# Date-based generic views
+    # Date-based generic views
     (r'^date_based/object_detail/(?P<year>\d{4})/(?P<month>\d{1,2})/(?P<day>\d{1,2})/(?P<slug>[-\w]+)/$', 
         'django.views.generic.date_based.object_detail', 
         dict(slug_field='slug', **date_based_info_dict)), 
@@ -45,4 +45,7 @@
     (r'^date_based/archive_month/(?P<year>\d{4})/(?P<month>\d{1,2})/$', 
         'django.views.generic.date_based.archive_month', 
         date_based_info_dict),     
+    (r'^date_based/archive_day/(?P<year>\d{4})/(?P<month>\d{1,2})/(?P<day>\d{1,2})/$', 
+        'django.views.generic.date_based.archive_day', 
+        date_based_info_dict),
 )
Index: tests/templates/views/article_archive_day.html
===================================================================
--- tests/templates/views/article_archive_day.html	(revision 0)
+++ tests/templates/views/article_archive_day.html	(revision 0)
@@ -0,0 +1,2 @@
+This template intentionally left blank
+
