@@ -345,7 +345,7 @@ def get_extra_model_filters(self, request):
345
345
return {}
346
346
347
347
def get_max_order (self , request , obj = None ):
348
- return self .model .objects .aggregate (max_order = Max (self .default_order_field )) ['max_order' ] or 0
348
+ return self .model .objects .aggregate (max_order = Coalesce ( Max (self .default_order_field ), 0 )) ['max_order' ]
349
349
350
350
def _bulk_move (self , request , queryset , method ):
351
351
if not self .enable_sorting :
@@ -422,9 +422,7 @@ class PolymorphicSortableAdminMixin(SortableAdminMixin):
422
422
``SortableAdminMixin``.
423
423
"""
424
424
def get_max_order (self , request , obj = None ):
425
- return self .base_model .objects .aggregate (
426
- max_order = Max (self .default_order_field )
427
- )['max_order' ] or 0
425
+ return self .base_model .objects .aggregate (max_order = Coalesce (Max (self .default_order_field ), 0 ))['max_order' ]
428
426
429
427
430
428
class CustomInlineFormSet (BaseInlineFormSet ):
@@ -451,7 +449,7 @@ def save_new(self, form, commit=True):
451
449
default_order_field = getattr (obj , self .default_order_field , None )
452
450
if default_order_field is None or default_order_field >= 0 :
453
451
query_set = self .model .objects .filter (** {self .fk .get_attname (): self .instance .pk })
454
- max_order = query_set .aggregate (max_order = Max (self .default_order_field )) ['max_order' ] or 0
452
+ max_order = query_set .aggregate (max_order = Coalesce ( Max (self .default_order_field ), 0 )) ['max_order' ]
455
453
setattr (obj , self .default_order_field , max_order + 1 )
456
454
if commit :
457
455
obj .save ()
0 commit comments