Django: valor padrão do campo das instâncias do auto-modelo

Como posso criar um valor padrão para um campo ser retirado dos objetos existentes de um modelo?

Eu tentei estes e não funcionou:

1)

class ModelA(models.Model):
    fieldA = models.CharField(default=self.get_previous())

    def get_previous(self):
        return ModelA.objects.all()[0].fieldA

NameError: name 'self' is not defined

2)

class ModelA(models.Model):
    fieldA = models.CharField(default=ModelA.get_previous())

    @staticmethod
    def get_previous():
        return ModelA.objects.all()[0].fieldA

NameError: name 'ModelA' is not defined

3)

class ModelA(models.Model):
    fieldA = models.CharField(default=get_previous())

def get_previous():
    return ModelA.objects.all()[0].fieldA

NameError: global name 'get_previous' is not defined

4)

def get_previous():
    return ModelA.objects.all()[0].fieldA

class ModelA(models.Model):
    fieldA = models.CharField(default=get_previous())

NameError: global name 'ModelA' is not defined

É claro por que 3) e 4) não funcionam. Eu posso imaginar por que 1) não funciona - parece que as propriedades da classe não podem se referir às instâncias (ou seja, self). Eu posso imaginar por que 2) não funcionará - aparentemente não há referência ao ModelA até que o intérprete passe por toda a classe.

Então, como devo abordar isso?

questionAnswers(3)

yourAnswerToTheQuestion