Django: valor predeterminado del campo de las instancias del auto modelo

¿Cómo puedo hacer que el valor predeterminado para un campo se tome de los objetos existentes de un modelo?

Probé estos y no funcionó:

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

I está claro por qué 3) y 4) no funcionarán. Me imagino por qué 1) no funcionará: parece que las propiedades de la clase no pueden referirse a las instancias (es decir, self). Me imagino por qué 2) no funcionará, aparentemente no hay referencia a ModelA hasta que el intérprete pase por toda la clase.

Entonces, ¿cómo debo abordar esto?

Respuestas a la pregunta(3)

Su respuesta a la pregunta