8
8
9
9
def archive_index (request , app_label , module_name , date_field , num_latest = 15 ,
10
10
template_name = None , template_loader = template_loader ,
11
- extra_lookup_kwargs = {}, extra_context = {}):
11
+ extra_lookup_kwargs = {}, extra_context = {}, allow_empty = False ):
12
12
"""
13
13
Generic top-level archive of date-based objects.
14
14
@@ -23,10 +23,10 @@ def archive_index(request, app_label, module_name, date_field, num_latest=15,
23
23
lookup_kwargs = {'%s__lte' % date_field : datetime .datetime .now ()}
24
24
lookup_kwargs .update (extra_lookup_kwargs )
25
25
date_list = getattr (mod , "get_%s_list" % date_field )('year' , ** lookup_kwargs )[::- 1 ]
26
- if not date_list :
26
+ if not date_list and not allow_empty :
27
27
raise Http404 ("No %s.%s available" % (app_label , module_name ))
28
28
29
- if num_latest :
29
+ if date_list and num_latest :
30
30
lookup_kwargs .update ({
31
31
'limit' : num_latest ,
32
32
'order_by' : ('-' + date_field ,),
@@ -140,7 +140,7 @@ def archive_month(request, year, month, app_label, module_name, date_field,
140
140
141
141
def archive_day (request , year , month , day , app_label , module_name , date_field ,
142
142
month_format = '%b' , day_format = '%d' , template_name = None ,
143
- template_loader = template_loader , extra_lookup_kwargs = {},
143
+ template_loader = template_loader , extra_lookup_kwargs = {},
144
144
extra_context = {}, allow_empty = False ):
145
145
"""
146
146
Generic daily archive view.
@@ -204,7 +204,7 @@ def archive_today(request, **kwargs):
204
204
def object_detail (request , year , month , day , app_label , module_name , date_field ,
205
205
month_format = '%b' , day_format = '%d' , object_id = None , slug = None ,
206
206
slug_field = None , template_name = None , template_name_field = None ,
207
- template_loader = template_loader , extra_lookup_kwargs = {},
207
+ template_loader = template_loader , extra_lookup_kwargs = {},
208
208
extra_context = {}):
209
209
"""
210
210
Generic detail view from year/month/day/slug or year/month/day/id structure.
0 commit comments