'A signal handler to capture the previous state of the zone
(from the DB) before it is lost.'

def on_zone_pre_save(self, sender, instance, **kwargs):

    try:
        instance.previous = DocumentZone.objects.values('document_id', 'document__locale').get(pk=instance.pk)
    except DocumentZone.DoesNotExist:
        instance.previous = None
