Ordenação padrão para itens de m2m por campo de modelo intermediário no Django

Eu tenho um problema incomum. Vamos considerar esses modelos (tirados do django docs):

class Person(models.Model):
    name = models.CharField(max_length=128)

    def __unicode__(self):
        return self.name

class Group(models.Model):
    name = models.CharField(max_length=128)
    members = models.ManyToManyField(Person, through='Membership')

    def __unicode__(self):
        return self.name

class Membership(models.Model):
    person = models.ForeignKey(Person)
    group = models.ForeignKey(Group)
    date_joined = models.DateField()
    invite_reason = models.CharField(max_length=64)

Agora, vamos dizer que temos 2 membros dos Beatles na banda dos Beatles (seguindo o exemplo em docs do django para modelos intermediários):

>>> beatles.members.all()
[<Person: Ringo Starr>, <Person: Paul McCartney>]

O código acima retornará membros classificados porordenação padrão para o modelo Person. Se eu especificar:

>>> beatles.members.all().order_by('membership__date_joined') 

os membros, são classificados através da data de adesão. Posso de alguma forma definir isso como comportamento padrão para este campo ManyToMany? Isso é para definir a ordem padrão de itens relacionados por campo no modelo intermediário? O ManyRelatedManager parece ter um argumento init core_filters, mas eu não tenho nenhuma idéia vaga de como acessá-lo subclassificando todo o campo m2m no django. Alguma idéia criativa? :)

Desde já, obrigado :)

Eu abri umBilhete em django trac.

questionAnswers(2)

yourAnswerToTheQuestion